0

我正在尝试构建一个 GraphQL 服务器,并且我正在尝试使用 GraphiQL Chrome 扩展来使用它。

一旦我将端点设置为我的服务器http://localhost:3000/graphql,GraphiQL 就会发送一个空查询:

Request URL:http://localhost:3000/graphql
Request Method:POST
Status Code:200 OK
Remote Address:[::1]:3000
Referrer Policy:no-referrer-when-downgrade

我让它返回一个空响应,但随后,我在 Chrome 中收到了这个 JavaScript 错误:

react.min.js:14 Uncaught TypeError: Cannot read property 'length' of undefined
    at GraphiQL.autoCompleteLeafs (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/graphiql/graphiql.js:1060:33)
    at GraphiQL._runEditorQuery (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/graphiql/graphiql.js:1131:13)
    at Object.r (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/react.min.js:14:10134)
    at i (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/react.min.js:12:21911)
    at Object.u [as executeDispatchesInOrder] (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/react.min.js:12:22122)
    at p (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/react.min.js:12:18475)
    at f (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/react.min.js:12:18601)
    at Array.forEach (native)
    at r (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/react.min.js:15:26156)
    at Object.processEventQueue (chrome-extension://fkkiamalmpiidkljmicmjfbieiclmeij/ext/react.min.js:12:19721)


在那之后,GraphiQL 就完全不起作用了。我可以输入任何查询,单击播放按钮,它所做的只是重复错误:

在此处输入图像描述 ​我错过了什么?GraphiQL 是否期望从空白查询中获得某种模式?

4

1 回答 1

1

我相信 GraphiQL chrome 扩展需要来自 API 的对象响应。尝试在 emtpy 请求上返回一个空白对象,看看是否可以为您解决问题。

在提交空白请求时查看https://launchpad.graphql.com(也使用 GraphiQL),我得到以下对象:

{
  "code": 400,
  "error": "Script returned an error.",
  "details": "No query was provided in request body."
}

这是可用于调试的描述性响应。

于 2017-05-31T07:46:18.583 回答