Apollo客户端自签名证书

Mar*_*ler 7 javascript apollo reactjs apollo-client

有没有一种方法,ApolloClient可以接受来自具有自签名证书的服务器的请求?

    import ApolloClient from 'apollo-boost';

    const client = new ApolloClient({
        uri: `https://${window.location.hostname}:8080/graphql`,
        rejectUnauthorized: false
    });
Run Code Online (Sandbox Code Playgroud)
  • rejectUnauthorized:false不起作用

请求上的错误:选项https:// localhost:8080 / graphql net :: ERR_CERT_AUTHORITY_INVALID

Eem*_*uli 3

前端

即使您单击“我了解风险”并转到该页面,Apollo 客户端也可能会拒绝证书。您可以通过启用来自本地主机的自签名证书来解决此问题:在 chrome 类型上

chrome://flags/#allow-insecure-localhost

转到导航并单击启用。

其他选项是将证书安装为受信任的。更多关于这个问题的内容。

后端

如果您在后端使用 Apollo 客户端和 Nodejs,您可以通过以下方式启动该过程:

NODE_TLS_REJECT_UNAUTHORIZED=0

这可以通过env-cmd包来完成。