当前,我正在尝试为我的nextjs项目工作提供一个api。 对于部署,我使用的是zeit的NOW v2(本地通过“ now dev”)。
除graphql-server之外,其他所有功能都正常运行。
在操场上和通过客户端,我收到404错误。 查询已正确执行,但出现错误对象(查询结果在响应字段中; 404)。
在parker-gui中检查它:同样的问题,并且在parker-input字段中显示消息“无法访问服务器”。
操场最初的错误:
{
"error": "Response not successful: Received status code 404"
}
您好查询后的游乐场:
{
"error": {
"data": {
"hello": "Hello world!"
}
}
}
浏览器控制台游乐场:
Error: "Response not successful: Received status code 404"
这是我现在加载的graphql服务器:
import express from 'express';
import { ApolloServer, gql } from 'apollo-server-express';
const typeDefs = gql`
type Query {
hello: String
}
`;
const resolvers = {
Query: {
hello: () => 'Hello world!',
},
};
const server = new ApolloServer({ typeDefs, resolvers,
introspection: true, playground: true,
subscriptions: {path: '/api'},
});
const app = express();
server.applyMiddleware({ app, path: "/api", cors: true });
module.exports = app;
还尝试了this示例。同样的问题。
谁能告诉我如何使其正常运行?
答案 0 :(得分:1)
我遇到了类似的问题(无法访问服务器)。这是一个授权问题。 GraphQL Playground docs提到了request.credentials
设置:
const server = new ApolloServer({
typeDefs,
resolvers,
introspection: true,
playground: {
settings: {
// So that auth works
// Docs: https://github.com/prisma/graphql-playground
['request.credentials']: 'same-origin',
},
},
subscriptions: {path: '/api'}
});