如何防止Apollo客户端查询在IE11中进行缓存?

时间:2018-11-07 16:55:30

标签: internet-explorer-11 apollo-client

We can disable caching globally in jQuery by doing:

$.ajaxSetup({ cache: false });

我正在尝试在Apollo Client中找到类似的选项。我已经尝试了中间件和Cache-Control标头,但是没有运气。

是否可以像以前的jQuery选项一样以类似的方式(即通过在查询字符串后附加时间戳)来禁用缓存?

2 个答案:

答案 0 :(得分:0)

尝试将fetchPolicy设置为“ no-cache”。像这样:

const defaultOptions = {
      watchQuery: {
        fetchPolicy: 'no-cache',
        errorPolicy: 'ignore',
      },
      query: {
        fetchPolicy: 'no-cache',
        errorPolicy: 'all',
      },
    }

const client = new ApolloClient({
    link: concat(authMiddleware, httpLink),
    cache: new InMemoryCache(),
    defaultOptions: defaultOptions,

});

来自this link的代码。

答案 1 :(得分:0)

haci soy yo

const defaultOptions = {
    watchQuery: {
        fetchPolicy: 'no-cache',
        errorPolicy: 'ignore',
    },
    query: {
        fetchPolicy: 'no-cache',
        errorPolicy: 'all',
    },
}

const client = new ApolloClient({
    link: concat(authMiddleware, httpLink),
    cache: new InMemoryCache(),
    defaultOptions: defaultOptions,
});