[英]javax.net.ssl.SSLPeerUnverifiedException: Hostname not verified:
[英]javax.net.ssl.SSLPeerUnverifiedException: Hostname XX.XXX.XX.XX not verified:
需要一些幫助。 為什么當我啟用SSL固定和測試HTTPS時,總是收到如下的javax.net.ssl.SSLPeerUnverifiedException錯誤消息:
JS: Https.request error javax.net.ssl.SSLPeerUnverifiedException: Hostname XX.XXX.XX.XX not verified: JS: certificate: sha256/hfR9N2GN2WS1NQuHAAnOUc1gVQCf4f4HrhdlfXXP+Ko= JS: DN: 1.2.840.113549.1.9.1=#16111315727473401578616d706c652e636f6d,CN=localhost,OU=techops,O=Example > Co,L=Boston,ST=MA,C=US JS: subjectAltNames: []
我有以下代碼:
let dir = knownFolders.currentApp().getFolder('certificate')
let certificate = dir.getFile('certificate.pem').path
Https.enableSSLPinning({ host: 'XX.XXX.XX.XX', certificate, allowInvalidCertificates: true, validatesDomainName: false })
Https.request({
url: 'https://XX.XXX.XX.XX:3333/login',
method: 'GET',
headers: {
"Content-type": "application/x-www-form-urlencoded",
},
}).then(function (response) {
console.log('Https.request response', response);
}).catch(function (error) {
console.error('Https.request error', error);
})
您能問我任何想法嗎,這是我的代碼中的問題? 還是任何示例如何解決此錯誤?
我在等你的要求。
謝謝
嘗試將-Djavax.net.debug = ssl:handshake添加到JVM參數。 它應該為您提供更好的錯誤輸出。
我唯一可以看到的是您使用java連接的服務器是不受信任的。 即:服務器上的證書是自簽名的。
如果您使用的是自簽名證書,並且想解決此問題,請在此處接受答案。 在Java客戶端中接受服務器的自簽名ssl證書, Pascal Thivent給出的答案更加全面,那么我能給您什么
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.