Nuxt Apollo模块请求具有双“ Bearer”的授权标头

时间:2020-04-17 17:31:57

标签: authentication token nuxt.js apollo auth0

在我的Nuxt应用程序中,身份验证令牌存储在名为'auth._token.auth0'的cookie中。看起来像:

Bearer%20eyJhbGciO...

我想在我的apollo请求授权标头中使用此令牌,因此我配置了apollo模块:

apollo: {
    clientConfigs: {
        default: {
            httpEndpoint: process.env.GRAPHQL_ENDPOINT,
            httpLinkOptions: {
                credentials: 'same-origin'
            },
            tokenName: 'auth._token.auth0'
        }
    }
},

并且成功将令牌从cookie附加到apollo授权标头,但是它添加了另一个'Bearer'字符串,因此graphql返回格式错误的授权标头错误,因为授权标头如下所示:

authorization: Bearer Bearer eyJhbGciOi...

有什么想法如何在nuxt阿波罗模块或nuxt身份验证模块中解决此问题?

1 个答案:

答案 0 :(得分:0)

我通过在配置中添加authenticationType: ''来修复它:

apollo: {
    clientConfigs: {
        default: {
            httpEndpoint: process.env.GRAPHQL_ENDPOINT,
            httpLinkOptions: {
                credentials: 'same-origin'
            },
            tokenName: 'auth._token.auth0'
        }
    },
    authenticationType: ''
},