我正在尝试使用keyclock进行用户身份验证,出于某些测试目的,我需要禁用SSL验证。在邮差它工作良好,如果我禁用SSL证书验证。但在我的react 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
我找到了一个变通办法,
只需在浏览器中输入请求URL,如果得到信任错误,只需单击高级并使用不安全来加载请求,它可能需要至少3次尝试才能完成相同的操作,然后页面将加载。并尝试同样的请求通过react应用程序,它不会给你这样的SSL错误。