こんにちは、私は Android と Java に取り組んでいます。私の問題は、401 が発生するたびに応答ヘッダーを取得できず、ステータス コードも取得できないことです。http url 接続を使用しています。私のコードは次のようになります。
String https_url = "http://abc.com";
HttpsURLConnection con = null;
int status;
URL url;
try {
url = new URL(https_url);
con = (HttpsURLConnection)url.openConnection();
con.setDoInput(true);
int responseCode = con.getResponseCode(); //throw IOException:Received authentication challenge is null
if (responseCode == 200)
{
}
else
{
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
Log.i("&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*", "inside exception");
if (con != null) {
Log.i("&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*", "inside not null");
int responseCodeAfterException = con.getResponseCode();
Log.i("&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*", "inside not null and response");
Log.i("&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*&*", "inside not null and response"+responseCodeAfterException);
// Handle according to new response code
}
e.printStackTrace();
}
応答ヘッダーからフィールドを取得できません。これは認証の問題であり、サーバーが応答で 401 を返すことはわかっていますが、その応答コードを取得できません。私は何か間違ったことをしていますか?この種の例外を処理する方法。助けが必要です ありがとうございます。