java.io.IOException: проблем с аутентификацией не найдено
Я новичок в Android, и это мой первый проект на Android. Я борюсь с "аутентификация" проблема больше суток. Я пробовал несколько вариантов, но ни один из них не работал.
По сути, я хочу вызвать REST API и получить ответ. Я уверен, что в API нет проблем, так как я использую тот же в другом приложении iOS.
Я передаю заголовок авторизации, но все равно аутентификация не показывает найденное сообщение. Я нашел несколько вопросов о стекапровороте, связанных с этим, но некоторые из них не работали, а некоторые не имеют смысла для меня.
Я получаю код статуса401
, Я знаю, что это означает, что либо аутентификация не пройдена, либо, если она пройдена, они ошибаются Здесь я уверен, что мои пропущенные верны.
Ниже мой код:
try {
url = new URL(baseUrl);
}
catch (MalformedURLException me) {
Log.e(TAG, "URL could not be parsed. URL : " + baseUrl + ". Line : " + getLineNumber(), me);
me.printStackTrace();
}
try {
urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod(method);
urlConnection.setConnectTimeout(TIMEOUT * 1000);
urlConnection.setChunkedStreamingMode(0);
// Set HTTP headers
String authString = "username:password";
String base64Auth = Base64.encodeToString(authString.getBytes(), Base64.DEFAULT);
urlConnection.setRequestProperty("Authorization", "Basic " + base64Auth);
urlConnection.setRequestProperty("Accept", "application/json");
urlConnection.setRequestProperty("Content-type", "application/json");
if (method.equals("POST") || method.equals("PUT")) {
// Set to true when posting data
urlConnection.setDoOutput(true);
// Write data to post to connection output stream
OutputStream out = urlConnection.getOutputStream();
out.write(postParameters.getBytes("UTF-8"));
}
try {
// Get response
in = new BufferedInputStream(urlConnection.getInputStream());
}
catch (IOException e) {
Log.e(TAG, "Exception in getting connection input stream. in : " + in);
e.printStackTrace();
}
// Read the input stream that has response
statusCode = urlConnection.getResponseCode();
Log.d(TAG, "Status code : " + statusCode);
}
catch (ProtocolException pe) {
pe.printStackTrace();
}
catch (IllegalStateException ie) {
ie.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
finally {
urlConnection.disconnect();
}
смотреть наскриншот logcat:
Любая помощь будет оценена. Спасибо.