无法使用 Rest Api 将用户添加到 SharePoint 组

Not able to add user to SharePoint Group using Rest Api

我一直在尝试通过rest添加用户api。它说用户一直不存在或不唯一

这是我的代码

<script type="text/javascript" src="/_layouts/15/SP.RequestExecutor.js"></script>

var executor;
                       executor = new SP.RequestExecutor(siteUrl);
                       executor.executeAsync({
                       url: siteUrl+"/_api/web/sitegroups("+groupid+")/users?@target='"+siteUrl+"'",
                       method: "POST",
                       body: JSON.stringify({ '__metadata': { 'type': 'SP.User' }, 'LoginName':'i:0#.w|domain\ userloginname' }),
                       headers: {
                       "accept": "application/json; odata=verbose",
                       "content-type": "application/json; odata=verbose"
                       },
                       success:function(data)
                       {
                       alert("New User:"+email+" added successfully in SharePoint Group: "+groupid);
                     
                       },
                       error: function(err)
                       {
                                                                              console.log(JSON.stringify(err));
                       alert("error: " + JSON.stringify(err));
                       }
                       });

我的登录名是 = userfirstname userlastname 就像 (John Stkeas)

这是我一直遇到的错误

{"responseAvailable":true,"body":"{"error":{"code":"-2130575276, Microsoft.SharePoint.SPException","message":{"lang":"en- US","value":"用户不存在或不唯一。"}}}","statusCode":404,"statusText":"Not Found","contentType":"application/json; odata=verbose;charset=utf-8","allResponseHeaders":"

我尝试将其替换为电子邮件地址 (example.com) 并且使用以下名称仍然无效

这是在 SharePoint 2013 中

相同的登录名 i:0#.w|domain\userloginname 对我有用。

我建议您使用端点 /_api/web/siteusers?$select=LoginName 来检查您的登录名。