当我模拟production
(又名playground is disabled
)并进入根目录http://localhost:9000/
时,我收到以下响应:
400 Bad Request
GET query missing
是否有一种方法可以防止这种情况或解决方法来渲染其他页面?
我对阿波罗很陌生。我仅使用apollo-server
(无快递)。我将不胜感激。
答案 0 :(得分:1)
使用 apollo-server-xxx
的默认配置,您需要向 POST
端点发送一个 /graphql
请求,请求正文是一个 graphql 字符串。
我遇到了同样的问题,因为我发送的是 GET
请求而不是 POST
。
答案 1 :(得分:0)
apollo-server
仅用于公开GraphQL API。为方便起见,它在开发中配置的任何路径(默认为/graphql
处公开GraphQL Playground实例。但是,Apollo Server本身并不旨在用于提供其他内容。如果需要此功能,请使用诸如apollo-server-express
,apollo-server,hapi
,apollo-server-koa
之类的东西将ApolloServer与Web应用程序框架(如Express)集成,然后使用该框架来提供您需要的任何其他内容想要。
答案 2 :(得分:0)
使用playground: true
:
const server = new ApolloServer({
introspection: true,
playground: true,
typeDefs,
resolvers,
})