我有一个与后台集成的敏捷后端。
当我对以下正文进行POST http://localhost:8080/oauth
时:
{
"grant_type": "password",
"username": "jeff",
"password": "test234",
"client_id": "testclient"
}
我得到这样的答复:
{
"access_token": "b10bee7e1b70d2cbb0e95f77caeac3b61707032c",
"expires_in": 3600,
"token_type": "Bearer",
"scope": "DbAPI",
"refresh_token": "bb440c03bd8df030615d6deaa35ed9b6ace84675"
}
哪个是正确的。
接下来,我使用以下标头进行GET http://localhost:8080/oauth/resource
:
accept: application/json
origin: http://localhost:4200
(zfr-cors
允许的我的前端)
authorization: Bearer b10bee7e1b70d2cbb0e95f77caeac3b61707032c
我得到这样的答复:
{
"success": true,
"message": "You accessed my APIs!"
}
这也是正确的!
但是,当我向GET http://localhost:8080/user
发出请求时(与对/oauth/resource
的请求具有相同的标头),我得到的响应是这样的:
{
"type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html",
"title": "Forbidden",
"status": 403,
"detail": "Forbidden"
}
这是不正确的。当我在apigility web-ui中禁用身份验证时,会得到正确的响应,即用户数组。
因此,只有/oauth/resource
返回正确的信息,其余部分(激活身份验证时)始终返回403,即使使用正确的access_token
)。
有没有能帮助我的能力/学说的导师?
一如既往,如果您需要更多代码段/信息/屏幕截图,请告诉我!