HttpURLConnection
でPOSTリクエストで画像を送信しようとしています。Android HttpURLConnection POSTリクエスト画像/ jpeg
7月28日12:15:00.722:
String i3 = String.valueOf(System.currentTimeMillis()); ByteArrayOutputStream i4 = new ByteArrayOutputStream(); i4.write(("--" + i3 + System.lineSeparator() + "Content-Disposition: form-data; name=\"" + I1.this.i2 + "\"; filename=\"" + I1.this.i2 + ".jpg\"" + System.lineSeparator() + "Content-Type: image/jpeg" + System.lineSeparator() + "Content-Length: " + String.valueOf(i2.this.i1.length) + System.lineSeparator() + System.lineSeparator()).getBytes()); i4.flush(); i4.write(i2.this.i1); i4.flush(); i4.write((System.lineSeparator() + System.lineSeparator() + "--" + i3 + "--").getBytes()); i4.flush(); i4.close(); HttpURLConnection i5 = (HttpURLConnection) new URL(myUrl).openConnection(); i5.setRequestMethod("POST"); i5.setDoOutput(true); i5.setRequestProperty("User-Agent", "Mozilla/5.0"); i5.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + i3); i5.setFixedLengthStreamingMode(i4.toByteArray().length); i5.connect(); OutputStream i6 = i5.getOutputStream(); i6.write(i4.toByteArray()); i6.flush(); i6.close(); System.out.println(i5.getResponseCode() + " " + i5.getResponseMessage()); i5.disconnect();
しかし、私は、接続アプリケーションの応答コード/メッセージを取得しようとしている私に例外をスロー:java.io私は次のコードを持っています.IOException: 接続{123.456.789.012:80、プロキシ= DIRECT @ HOSTADDRESS = 123.456.789.012 のCipherSuite =なしプロトコル= HTTP/1.1}(リサイクルカウント= 0)たぶん
問題にストリームの予期しない終了私の投稿要求が悪いか、syn税務上のエラー?あなたは私を助けて何が間違っていると言うことができますか?
このコードをWindowsのJavaアプリケーションでテストしました。要求の結果は200 OK
です。結論:アンドロイドに何か間違っている!しかし、私はまだ具体的に何がわかりません。