【发布时间】:2017-06-10 17:01:36
【问题描述】:
我正在使用带有 graphql-server-express 和 apollo-client 的 Apollo Stack。
因为我的后端并不完美,可能会出现错误,因此我必须对该路径的错误响应请求。
到目前为止,我的主要问题是身份验证,因此我以错误响应。
return new Error(`${data.status}: ${data.statusText} @ ${data.url}`)
在前端我使用 apollo-client 来查询数据。
return apollo
.query({query: gql`
query {
${query}
}`,
forceFetch: forceFetch
})
.then(result => { debugger; return result.data })
.catch(error => { debugger; console.error(error); });
但如果查询的一个属性以错误响应,则只会调用 catch 函数。 甚至其余属性的数据也被传输,我在 Chrome 开发工具的网络选项卡中看到了这一点。 in 不是 catch 函数中的错误对象。
我的尝试在 GraphiQL 上运行良好,我在同一个对象中获取错误和数据。
那么如何在不丢失整个请求的情况下为属性抛出错误?
【问题讨论】:
标签: graphql apollo apollostack apollo-server apollo-client