我设法使用用户名和密码访问基本身份验证的Rest Api。 现在我尝试使用OAuth访问Rest Api。 我指的是this article
这是我创建的POST消息的格式(使用Postman with Chrome),
POST /oauth_token.do HTTP/1.1
Host: devxxxxx.service-now.com
Accept: application/json
Content-Type: application/json
Authorization: Basic YWRtaW46Q0BycjBsMTIz
Cache-Control: no-cache
Content-Type: application/x-www-form-urlencoded
Url编码正文:
grant_type=password&client_id=xxxxxx&client_secret=xxxxxx&username=admin&username=xxxxxx
我在没有编码的情况下尝试了编码的身体和身体,它给出了相同的结果。
响应
{
"error": "server_error",
"error_description": "access_denied"
}
我在这里遗漏了什么吗?不是" admin"用户是否有权执行此操作并获取令牌?
答案 0 :(得分:0)
好的,有两件事,
grant_type =密码&安培; CLIENT_ID = XXXXXX&安培; client_secret = XXXXXX&安培;用户名=管理员&安培;用户名= XXXXXX
应该是,
grant_type =密码&安培; CLIENT_ID = XXXXXX&安培; client_secret = XXXXXX&安培;用户名=管理员&安培;密码= XXXXXX
<强>回顾,强>
使用POSTMAN,
确保端点为&#34; https://[instance-now].com/oauth_token.do&#34;
接头: 接受:application / json
正文(x-www-form-urlencoded)
grant_type:密码 client_id:xxxxxx client_secret:xxxxxxx 用户名:username_01 密码:password_01
希望这会有所帮助......