zeit-now v2 + apollo-server-express:操场错误:无法访问服务器
Posted
技术标签:
【中文标题】zeit-now v2 + apollo-server-express:操场错误:无法访问服务器【英文标题】:zeit-now v2 + apollo-server-express: playground error: Server cannot be reached 【发布时间】:2019-12-19 22:21:24 【问题描述】:目前我正在尝试为我的 nextjs 项目工作获取 api。 对于部署,我使用的是 zeit 的 NOW v2(本地通过“now dev”)。
除了 graphql-server 之外,一切正常。
在操场上并通过客户端我收到 404 错误。 查询正在正确执行,但我得到一个错误对象(查询结果在响应字段中;404)。
在 playground-gui 中检查它:同样的问题,在显示消息“无法访问服务器”的 playground-input 字段中。
游乐场初始错误:
"error": "Response not successful: Received status code 404"
hello-query 后的游乐场:
"error":
"data":
"hello": "Hello world!"
浏览器-控制台游乐场:
Error: "Response not successful: Received status code 404"
这是我现在加载的 graphql-server:
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 示例。同样的问题。
谁能告诉我如何让它正常运行?
【问题讨论】:
【参考方案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'
);
【讨论】:
以上是关于zeit-now v2 + apollo-server-express:操场错误:无法访问服务器的主要内容,如果未能解决你的问题,请参考以下文章
Prisma v2:生成一个 .graphql 文件来编辑?
Apollo-Server,如何与 SailsJS 一起使用?