В настоящее время я использую JWT для подписи повара ie в ответе через GraphQL, но это произошло после того, как JWT успешно сгенерировал токен и назначил accessToken в res.cook ie ('accessToke', acessToken) , внешний интерфейс не может правильно получить ie cook.
Это настройка, которую я использую для GraphQL на стороне сервера:
app.use( '/', cors(),
graphqlHTTP((req, res) => ({
schema,
graphiql: true,
pretty: true,
context: {req, res}
})));
Это настройка, которую я использовал для клиента -side для подключения к бэкэнду
const client = new ApolloClient({
cache: new InMemoryCache(),
uri: 'http://localhost:5000/',
});
И это преобразователь, как я обрабатываю повар ie в GraphQL ( Пользователь и jswToken могут быть успешно извлечены и сгенерированы, но добавить повар ie назначается res должным образом после того, как я console.log () это, но в интерфейсе я не видел, чтобы приготовление ie возвращалось в инструменте отладчика из Chrome в разделе приложения ):
const login = {
type: user,
args: {
userName: {type: GraphQLString},
password: {type: GraphQLString}
},
resolve: async(_, { id, password }, context) => {
const userService = new UserService();
const user = await userService.getUserInfo(userName);
const jswToken = jsonwebtoken.sign(
{user},
privateKey,
{expiresIn: "1d"}
);
res.cookie('accessToken',jswToken );
return user;
})
Моя настройка очень близка к ответу в этой ссылке: GraphQL выдаёт JWT / Cook ie