私はHttpsURLConnectionを開いています。 どうすれば私のSSLソケットをこの接続に「接続」することができます。これは、別のSSLハンドシェイクを行わないことと、私の暗号を変更しないことを意味します。すでに開かれているSSLセッションでSSLソケットを開く方法セッションのJava
URL url = new URL ("https://example.com:8080");
HttpsURLConnection connection = (HttpsURLConnection)url.openConnection();
connection.connect();
SSLSocketFactory ssf = connection.getSSLSocketFactory();
SSLSocket socket = (SSLSocket) ssf.createSocket("example.com", 8080);
//ここでは、https接続と同じsslセッションにあるソケットでメッセージを送信します。
BufferedWriter out = new BufferedWriter(
new OutputStreamWriter(s.getOutputStream()));
out.write("Hello");
out.flush();
out.close();
Javaでこのようなことを行うのは本当ですか?
私は2番目のブロックでS'が本当に 'socket'であると私は8080点に注意してください'前提とHTTPSは珍しいと紛らわしいポートですあなたの2番目のブロックがやっているように、HTTP + SSL/TLS以外のものははるかに少なくなります。 –
@ dave_thompson_085:ポート8080は、ルータやプロキシなどでよく使用されます。 –
@ dave_thompson_085:私はポート443について知っています、この例を挙げてください。これは私の質問ではありません。はいソケットとして申し訳ありません: - D – Vik