我正在尝试使用 Postman 工具从 Microsoft Graph API 获取 accessToken。我正在授权选项卡中使用 Type=oauth2.0 进行尝试,以便我可以使用此 accessToken 进行后续的 Get、Post 请求。
如果 grant_type 是“授权代码”,则一切正常。但是当 grant_type 是client_credentials时,邮递员会抛出以下错误
从 client_credentials 流获取访问令牌时出错。无法发送请求
我查看了 DeveloperTools 中的“网络”选项卡,它没有为 client_credentials 流程提交 Client_Id、Client_Secret。
问题: 如何让 Postman 为client_credentials grant_type 场景工作?
我在这里错过了任何步骤吗?请指导我..
谢谢
我在这方面迟到了,但希望如果其他人寻找这个,他们可以找到它,因为我们遇到了同样的问题。
前两个答案(/sf/answers/4599568851/和/sf/answers/3518910391/)引导我们走向正确的方向,但我们仍然必须翻译它才能正常工作在邮递员中:
正如 Mahmoud 提到的,您可以发送client_id和client_secret作为基本身份验证:
基本身份验证
主要部分是处理grant_type好像client_credentials。为此,我们输入:
grant_type=client_credentials在请求的正文中。
单击正文 > 选择 x-www-form-urlencoded > key =grant_type和 value = client_credentials。
完成后,“正文”选项卡应如下所示: “正文”选项卡
希望这有帮助!
小智 1
尝试提供以下详细信息:
Request Type: POST
URL: https://XXXXXXXXXXXXXXXXXXXXXXXX/token?grant_type=client_credentials
Authorization: Basic [client_id]:[client_secret]
Content-Type: application/x-www-form-urlencoded
Run Code Online (Sandbox Code Playgroud)
输出应如下所示:
{
"access_token": "90778b6abce64fc124892ce66f7a8ecd",
"token_type": "Bearer",
"expires_in": 60,
"scope": ""
}
Run Code Online (Sandbox Code Playgroud)
注意:以 BASE64Encoded 形式提供[client_id]:[client_secret]。
| 归档时间: |
|
| 查看次数: |
20477 次 |
| 最近记录: |