我从我的graphql端点发送data
和errors
(架构在Graphene
中生成)。我查询的方式是使用client.query
方法(当我使用withApollo
HOC时作为道具提供)。
我这样做是这样的:
let result = this.props.client.query({
query: query,
variables: {},
fetchPolicy: this.state.fetchPolicy
})
.then(result => this.handle_data(result.data))
.catch((e) => {
alert("Hello"+e);
});
当服务器出现错误时(由于查询错误),我发送data
null
和errors
设置实际错误消息。然后在这里执行catch
块。 e
的值不是我从服务器发送的errors
。如何获取我在catch
块中发送的服务器响应(就像我们进入then
块一样)?
答案 0 :(得分:0)
使用withApollo然后添加errorPolicy:'忽略'在您的配置上,如下所示:
const result = await client.query({
query: getQuery(fieldArgs),
variables: { filters: [...filters] },
errorPolicy: 'ignore',
});