У меня проблема с аутентификацией при подключении к веб-сервису.Когда я попытался открыть его через веб-браузер, он попросил меня войти с помощью «логина» и «пароля».Я использую приведенный ниже код для аутентификации, но он не работает.Я получаю 401. Я перепробовал все, что нашел, но все равно не могу подключиться.
String res = "sample string";
SoapObject request = new SoapObject(NAMESPACE, METHODNAME);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(WSDL);
List<HeaderProperty> headers = new ArrayList<HeaderProperty>();
headers.add(new HeaderProperty("Authorization", "Basic " + org.kobjects.base64.Base64.encode("my_username:my_password".getBytes())));
androidHttpTransport.debug = true;
try {
androidHttpTransport.call(SOAP_ACTION, envelope, headers);
SoapObject resultsRequestSOAP = (SoapObject) envelope.bodyIn;
res = resultsRequestSOAP.toString();
System.out.println("Response: " + resultsRequestSOAP.toString());
} catch (Exception e) { //here comes org.ksoap2.transport.HttpResponseException: HTTP request failed, HTTP status: 401
Log.d(TAG, e.getMessage());
}
return res;