问题描述
这是我第一次使用 GraphQL,我试图访问给定查询的内容,但由于缺乏权限,我无法访问该给定查询,在这种情况下,我获得了用户名和密码来访问该查询GraphQL api,我可以在 GraphQL 中使用这些凭据获取和验证令牌,但我的问题如下,我如何在 API 中进行身份验证才能访问 API 的查询?
我的错误如下。
"errors": [
{
"message": "You do not have permission to perform this action",
我相信这是非常基本的事情,但我只是无法找到解决此问题的方法。
解决方法
点击 HTTP Header 并添加您的令牌,如下所示:
{
"Authorization": "Bearer YOUR_TOKEN_HERE"
}
您可能需要删除 Bearer 并仅使用令牌,这取决于您如何在服务器上进行授权。
,如果有人偶然发现同样的问题,那么在我的情况下仅发送 HTTP 是行不通的,因为我的 @auth-directive 中有这一行:
let token = req?.cookies?.token
它只会从 cookie 中检查令牌,而不会从我传递授权标头的请求标头中检查。
将问题更改为:
let token = req?.cookies?.token ?? req?.headers?.authorization