2017-05-31 84 views
0

我正在嘗試構建GraphQL服務器,並試圖使用GraphiQL Chrome擴展來玩它。空白的GraphQL查詢應該返回什麼?

只要我的終點設置爲我的服務器,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根本不起作用。我可以鍵入任何查詢,單擊播放按鈕,它只是重複錯誤:

enter image description here 我在想什麼? GraphiQL是否期待來自空白查詢的某種模式?

回答

0

我相信GraphiQL chrome擴展需要來自API的對象響應。嘗試在emtpy請求上返回一個空白對象,以查看是否爲您解決了這個問題。

看着https://launchpad.graphql.com(也使用GraphiQL)提交空白請求我得到以下對象回來時:

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

這是一個描述性的響應,你可以使用用於調試。