react-apollo 网络错误:查询“Hello”的服务器响应丢失

Posted

技术标签:

【中文标题】react-apollo 网络错误:查询“Hello”的服务器响应丢失【英文标题】:react-apollo Network error: Server response was missing for query 'Hello' 【发布时间】:2018-06-23 01:20:15 【问题描述】:

我正在尝试使用此代码设置 react-apollo:

import React from 'react';
import render from 'react-dom';

import gql from 'graphql-tag';
import  ApolloProvider, graphql  from 'react-apollo';
import  ApolloClient  from 'apollo-client';
import  HttpLink  from 'apollo-link-http';
import  InMemoryCache  from 'apollo-cache-inmemory';


const client = new ApolloClient(
  link: new HttpLink( uri: 'http://localhost:5000/graphql' ),
  cache: new InMemoryCache()
);



class App extends React.Component 
  render () 
    return <p> Hello React project</p>;  

const MY_QUERY = gql`query Hello  hello `;

const AppWithData = graphql(MY_QUERY)(App)
render(
  <ApolloProvider client=client>
    <AppWithData />
  </ApolloProvider>,
  document.getElementById('app')
);

但是,我收到此错误:

查看 chrome 开发工具中的“网络”选项卡,我可以看到请求正在通过:

我想知道是否可能缺少一些配置设置来获得正确格式的响应?或者我可能需要以不同的格式从我的 graphql 端点返回数据?任何建议都值得赞赏,我只是在学习 graphql 和 apollo,所以它可能是非常明显的。谢谢!

【问题讨论】:

【参考方案1】:

问题是我需要将响应包装在“数据”键中,所以我需要的响应是:


    "data": 
         "hello": "hello"
       

正如我所说,我是 graphql/apollo 的新手

【讨论】:

以上是关于react-apollo 网络错误:查询“Hello”的服务器响应丢失的主要内容,如果未能解决你的问题,请参考以下文章

未捕获的错误:react-apollo 仅支持每个 HOC 的查询、订阅或突变

React Apollo 显示“react-apollo 仅支持每个 HOC 的查询、订阅或突变”错误

React-Apollo 错误:“...仅支持每个 HOC 的查询、订阅或突变”

GraphQL、react-apollo、Apollo 1,全局处理 200 HTTP 代码状态的 data.error 错误。不是网络一。

所有 apollo 查询错误都会引发网络 400 错误

React-Apollo - 查询 - renderProp:反应警告:无法对未安装的组件执行反应状态更新