问题
Is there any way of accessing the request object from the underlying express app in Apollo Server
回答1:
The context configuration parameter can be either an object, a function that returns the object, or a function that returns a promise to return the object. This function would get the HTTP request as a parameter, and could be defined like so:
const apolloServer = new ApolloServer({
schema,
context: async ({ req }) => {
const something = getSomething(req)
return { something }
},
})
apolloServer.applyMiddleware({ app, path: '/graphql' })
const { appPort } = serviceFunc.getAccessData()
app.listen({ port: appPort }, () => {
console.log(`Express+Apollo Server on http://localhost:${appPort}/graphql`)
})
Thanks to Eugene eugene1g
来源:https://stackoverflow.com/questions/56375805/accessing-request-object-in-apollo-server-with-expressjs