如何在生产中禁用graphiql但仍能在生产中访问它?
使用express-graphql,我们可以做类似的事情
app.use('/graphql', graphqlHTTP({
schema: MySessionAwareGraphQLSchema,
graphiql: process.env.NODE_ENV === 'development',
}));
Run Code Online (Sandbox Code Playgroud)
使用apollo服务器,我的设置是
import {graphqlExpress, graphiqlExpress} from 'graphql-server-express'
const app = new Express()
app
.all('/graphql', bodyParser.json())
.all('/graphql', graphqlExpress({
schema
)
.all('/graphiql', graphiqlExpress({
endpointURL: 'http://localhost/graphql'
})
)
Run Code Online (Sandbox Code Playgroud)
我找不到传递给NODE_ENV来启用/禁用graphiql的方法.
您的意思是仅在开发中启用 graphiql 并在生产中禁用它。如果是这样,只需排除 /graphiql 处理程序
if (process.env.NODE_ENV === 'development') {
app.all(
'/graphiql',
graphiqlExpress({
endpointURL: '/graphql',
}),
);
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1654 次 |
最近记录: |