我正在使用 GraphQL Apollo 客户端。我正在尝试从有错误的查询中检索结果。
GraphQL 响应 https://i.stack.imgur.com/QIV5I.png
即使在同一响应中返回错误,如何检索数据?
这会自动捕获错误。相反,我希望它访问数据。
this.client.query({
query: gql(query),
variables: variables
}).then(function ({ data }) {
return data;
}).catch(error => console.log(error));
在 Apollo 文档中找不到任何与此相关的内容。有任何想法吗?
如果你将来在这里绊倒
Apollo-client中有多种错误类型,如下所示:
1.GraphQL错误,
2. 服务器错误,
3. 交易错误,
4.用户界面错误,
5. Apollo 客户端错误。
作为@ Alexander Schoonderwaldt,您可以了解此错误和错误政策here https://github.com/apollographql/apollo-client/issues/4552
您可以使用下面的代码处理/捕获 graphql 错误。如果值返回undefined
,它不再是一个 graphql 错误。你需要调查一下。您可能会遇到返回的网络错误Error CONNREFUSED
或其他。
.query({
query: myquery
})
.then(({ data }) => {
console.log(data.user);
return { loggedInUser: data };
})
.catch(errors => {
// Fail gracefully
console.log(errors.message); // log grapgql error
return { loggedInUser: {} };
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)