ポート 8080 でサーバーに接続しようとしていますが、AndroidHttpClient は 8080 以外で SSL を使用するよう強制しています。問題のあるコード
URL url = new URL("http", "google.com", 8080, "");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.setRequestProperty("Accept", "*/*");
urlConnection.connect();
これはCharlesログから。
URL フィールドが「https://」を使用していることに注意してください
ポートを 80 に変更すると、次のようになります。
URL url = new URL("http", "google.com", 80, "");
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod("GET");
urlConnection.setRequestProperty("Accept", "*/*");
urlConnection.connect();
すべて正常に動作します:
ポート 80 以外で SSL を強制する理由がわかりません。AndroidHttClient と DefaultHttpClient で同様の問題が発生しました。Android側の問題のようです。