我已在azure广告中添加了一个用户。现在使用graph api
,我想更新其显示名称或说出密码。我指的是本指南https://docs.microsoft.com/en-us/graph/api/user-update?view=graph-rest-1.0&tabs=cs
首先,我不确定我是否使用正确的URL更新用户,但是下面是我正在使用的内容:
https://graph.microsoft.com/v1.0/users/john@<myorg>.onmicrosoft.com
我正在传递要在URL中添加的用户的userName
。如果这不正确,请告诉我。
我在请求中包含了OAuth token
作为承载令牌,并发布了以下json:
{
"accountEnabled": true,
"displayName": "john12"
}
从上面的json中,我想将显示名称从john
更改为john12
。但是我遇到了以下错误:
{
"error": {
"code": "Request_BadRequest",
"message": "Specified HTTP method is not allowed for the request target.",
"innerError": {
"request-id": "536fd7c1-db46-4927-9732-169da778811c",
"date": "2019-06-06T04:58:26"
}
}
}
任何人都可以,请让我知道如何更新现有的用户属性。谢谢
答案 0 :(得分:1)
很可能您没有使用HTTP方法PATCH
。我说的是看错误消息Specified HTTP method is not allowed for the request target.
如果您使用PATCH
以外的其他任何字符,例如POST
,最终将收到此错误消息。
您的请求的JSON主体看起来不错。我尝试使用类似的JSON更新现有用户,并从Microsoft Graph Explorer发送一个PATCH
请求,效果很好。
当我使用Microsoft Graph Explorer中的POST或PUT调用时,我可以重现与您看到的相同的错误消息。
尽管将POST更改为PATCH后,具有相同JSON正文的相同请求URL可以正常工作。稍后再次查询用户(GET)时,我可以看到displayName已正确更新