繁体   English   中英

Apollo-客户端自签名证书

[英]Apollo-client self signed certificate

ApolloClient 有没有办法接受来自带有自签名证书的服务器的请求?

    import ApolloClient from 'apollo-boost';

    const client = new ApolloClient({
        uri: `https://${window.location.hostname}:8080/graphql`,
        rejectUnauthorized: false
    });
  • 拒绝未授权:false 不起作用

请求错误:OPTIONS https://localhost:8080/graphql net::ERR_CERT_AUTHORITY_INVALID

前端

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

铬://标志/#allow-insecure-localhost

到导航并单击启用。

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

后端

如果您在后端使用 Apollo 客户端和 Nodejs,您可以使用以下命令开始该过程:

NODE_TLS_REJECT_UNAUTHORIZED=0

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

您还可以使用代理选项进行开发:

let fetchOptions = {}

if (!process.env.NODE_ENV !== 'production') {
  const https = require('https')
  fetchOptions = { agent: new https.Agent({ rejectUnauthorized: false }) }
}
const link = new HttpLink({
  uri: 'https://localhost/api/graphql',
  credentials: 'same-origin',
  fetchOptions,
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM