При следующей инициализации приложения Koa:
const apolloServer = new ApolloServer({
...processSchema(schemas),
...graphqlConfig,
cors: false, // already present with Koa
context: ctx => {
console.log( "*** 2", ctx.session );
// -> *** 2 undefined
}
});
const app = new Koa();
const serverHttp = app
.use(cors(CORS_CONFIG))
.use(session(SESSION_CONFIG, app))
.use(async (ctx, next) => {
console.log( "*** 1", ctx.session );
// *** 1 Session { ...session object }
await next();
if (!ctx.body) {
ctx.throw(404);
}
})
.use(koaBody())
.use(apolloServer.getMiddleware())
.listen(port)
;
Как видите, выполнение любого запроса GraphQL будет выводить
*** 1 Session { ...session object }
*** 2 undefined
Показывая, что Apollo не получает контекст, ни session.
- Можно ли получить доступ к сеансу из функции
context
? - Можно ли получить доступ к сеансу из преобразователя?