首页 > 解决方案 > reactjs中发布请求时如何禁用SSL证书验证?

问题描述

我正在尝试使用 keyclock 进行用户身份验证,出于某些测试目的,我需要禁用 SSL 验证。在邮递员中,如果我禁用 SSL 证书验证,它会很好地工作。但是在我的反应 JS 代码中,它给了我和错误(net::ERR_CERT_AUTHORITY_INVALID),即使它被禁用,如下面的代码所示。如果以下代码中缺少任何内容或需要做任何其他事情,请纠正我。

var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/x-www-form-urlencoded");

var urlencoded = new URLSearchParams();
urlencoded.append("grant_type", "password");
urlencoded.append("client_id", "clientid");
urlencoded.append("username", "username");
urlencoded.append("password", "password");
urlencoded.append("client_secret", "clientsecret");

const httpsAgent = new https.Agent({
    rejectUnauthorized: false,
  });

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: urlencoded,
  redirect: 'follow',
  Agent: httpsAgent
  
};

fetch("serverurl/realms/realmname/protocol/openid-connect/token", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));

错误:net::ERR_CERT_AUTHORITY_INVALID

标签: javascriptreactjssslaxioscertificate

解决方案


当我找到解决方法时,

只需在浏览器中输入请求 URL,如果出现信任错误,只需单击高级并选择不安全来加载请求,可能需要至少 3 次尝试执行相同操作,然后页面才会加载。并通过反应应用程序尝试相同的请求,那么它不会给你这样的 SSL 错误。


推荐阅读