小编Law*_*Law的帖子

将 NextAuth JWT 传递给 Apollo 客户端

我正在创建一个 nextjs 应用程序,它利用 NextAuth 进行身份验证并生成具有自定义编码和解码的 JWT。传递 hasura 声明需要自定义编码和解码。

如何将该 jwt 传递给 apollo 以便附加带有所述 jwt 的请求标头,以便 hasura 验证我的请求?我看了几个例子,人们从本地存储中提取令牌,但 NEXTAuth 将 JWT 存储在 cookie 中。我不知道如何访问它。我尝试将令牌添加到我的会话中并使用 NextAuth getSession() 方法读取会话,但它返回 null。

lib\apollo.ts

import {
  ApolloClient,
  InMemoryCache,
  ApolloLink,
  HttpLink,
  concat,
} from '@apollo/client'
import { WebSocketLink } from '@apollo/client/link/ws'
import { getSession } from 'next-auth/react'

// TODO - Replace URIs with environment variables

async function sesFunc() {
  const sesh = await getSession()
  return sesh
}
var ses = sesFunc()
console.log(`Session in apollo: ${JSON.stringify(ses)}`)


const graphLink …
Run Code Online (Sandbox Code Playgroud)

jwt next.js apollo-client next-auth

5
推荐指数
0
解决办法
914
查看次数

标签 统计

apollo-client ×1

jwt ×1

next-auth ×1

next.js ×1