我根本无法找到一种方法来做到这一点。有谁知道这是否支持?谢谢。
ApolloClient 发出请求的方法以及使用它们的 React Hooks 充当数据实际获取方式的抽象。它可能来自 HTTP 上的远程服务器,来自缓存,来自直接针对模式执行请求等。因此,它们不会公开有关如何首先获取数据的任何信息,包括传输 -特定信息,例如 HTTP 标头。
如果您需要访问此信息,则适当的位置应位于您添加到您的链接之前的链接内。HttpLink
-- 要么是现有的,比如ContextLink
or ErrorLink
,或您自己滚动的一些自定义链接。如果您在错误处理上下文中执行此操作,那么ErrorLink
正如评论中所建议的,这将是你最好的选择。
HttpLink
将来自服务器的原始响应注入到所有链接使用的上下文对象中(请参阅here https://github.com/apollographql/apollo-link/blob/480df382cf7db486ae76c56ac2522134d77e36fa/packages/apollo-link-http/README.md#context)。假设您使用默认值fetch
API 作为获取器,此响应将是Response https://developer.mozilla.org/en-US/docs/Web/API/Response object.
所以你可以这样做:
const link = onError(({ graphQLErrors, networkError, operation }) => {
const { response } = operation.getContext();
const { headers, status } = response;
// do something with the headers
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)