我有一個java complied包來與網絡上的https服務器通信。運行編譯給出以下例外:無法識別的SSL消息,明文連接?異常
javax.net.ssl.SSLException: Unrecognized SSL message, plaintext connection?
at com.sun.net.ssl.internal.ssl.InputRecord.handleUnknownRecord(Unknown Source)
at com.sun.net.ssl.internal.ssl.InputRecord.read(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)
at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(Unknown Source)
我認爲這是由於與客戶機建立的連接不安全。有沒有辦法配置本地機器或端口以連接到遠程https服務器?
我有同樣的錯誤,我開始使用http而不是https時解決了。但是,當我將鏈接放在瀏覽器中時,它可以工作!我需要執行安全的查詢。關於如何解決問題的任何想法? – rsy
@rsy當你'用https'放置鏈接'時,瀏覽器已經改變爲你的端口443。你可以自己做同樣的事情。事實上,如果你根本沒有指定端口,'HttpURLConnection'會自動爲你做。 – EJP
這只是一次嘗試。完美解決方案 – MAC