这个卷发效果很好
curl acme:acmesecret@localhost:9999/uaa/oauth/token -d "password=password&username=user&grant_type=password" -H "Accept: application/json"
在这个 curl 中,
acme
和 acmesecret
是应用程序用来向在 localhost:9999
中运行的授权服务器进行身份验证的客户端凭据我正在尝试使用 postman (chrome 的休息客户端)发出相同的请求。
这是屏幕截图(我在“基本身份验证”选项卡中输入了凭据)
下面是发出的请求的预览:(注意:添加了AUthorization基本头)
我收到错误消息为“invalid_client”。如何解决这个问题?
谢谢
最佳答案
curl
acme:acmesecret@localhost:9999/uaa/oauth/token
acme:acmesecret
是在基本身份验证 header 中发送的 HTTP 客户端凭据。您可以添加 -v
切换以查看请求中的 header 。-d "password=password&username=user&grant_type=password"
这是表格数据。
在 Postman 请求中,您已将其切换。您在表单数据中有客户端凭据,我猜您在 auth header 中有用户凭据。
只需切换它们。对于 OAuth 2.0 密码授予请求,客户端凭据应位于 auth header 中,而用户凭据应位于表单数据中。
关于curl - 如何在 postman 中传递客户端凭据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32276825/