【发布时间】:2021-01-28 06:02:29
【问题描述】:
我目前的设置是:
import {
ApolloClient,
ApolloProvider,
gql,
HttpLink,
} from '@apollo/client';
import fetch from 'node-fetch';
import { Agent } from 'https';
...
const agent = new Agent({
rejectUnauthorized: false,
});
const httpLink = new HttpLink({
uri: process.env.REACT_APP_GRAPHQL_URL,
fetch: fetch,
fetchOptions: {
agent: agent
},
});
...
const client = new ApolloClient({
link: httpLink,
cache: cache,
typeDefs,
connectToDevTools: true,
});
...
ReactDOM.render(
<ApolloProvider client={client}>
<App />
</ApolloProvider>,
document.getElementById('root')
);
当我useQuery 时,我得到createHttpLink.ts:121 POST https://*****.test/wp/graphql net::ERR_CERT_INVALID。据我所知,这是当前使用自签名证书的方式,但它似乎不起作用。否则我找不到任何文档。我当前的实现似乎忽略了拒绝有什么问题?
【问题讨论】:
-
@xadm 在没有帮助之前看到了那个帖子,我尝试添加
process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = 0;仍然是同样的错误。 -
我查看了 React Dev Tools 中的 Apollo Provider 并且 fetch options 中的 agent 对象为空。所以现在看来我的代码中的内容并没有进入浏览器。为什么我的 fetch 会删除它? Imgur
标签: graphql create-react-app apollo-client