我有一个GraphQl服务器和一个反应前端.我使用护照和LocalStrategy来验证运行良好的用户,我可以成功登录现有用户.我还想使用护照会话来创建用户会话,以便稍后我可以在我的GraphQl解析器中访问登录用户进行身份验证.我预计护照会在成功验证用户后在会话中设置用户.但是在从客户端向服务器发送正确的凭据后,GraphQl查询无权访问req.user.
GraphQL服务器代码如下所示:
import express from 'express';
import passport from 'passport';
import {Strategy as LocalStrategy} from 'passport-local';
import session from 'express-session';
import cors from 'cors';
import bodyParser from 'body-parser';
import models from './models';
import typeDefs from './schema';
import resolvers from './resolvers';
import { graphqlExpress, graphiqlExpress } from 'apollo-server-express';
import { makeExecutableSchema } from 'graphql-tools';
export const schema = makeExecutableSchema({
typeDefs,
resolvers,
});
const app = express();
app.use('*', cors({ origin: 'http://localhost:3000' }));
app.set('port', (process.env.PORT || 3001));
//--- Passport ----
app.use(session({ …Run Code Online (Sandbox Code Playgroud)