Базовая аутентификация на Android

Я нашел пример

try { String data = "YOUR REQUEST BODY HERE"; // CredentialsProvider credProvider = new BasicCredentialsProvider(); credProvider.setCredentials(new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT), new UsernamePasswordCredentials("YOUR USER NAME HERE", "YOUR PASSWORD HERE")); // DefaultHttpClient http = new DefaultHttpClient(); http.setCredentialsProvider(credProvider); // HttpPut put = new HttpPut("YOUR HTTPS URL HERE"); try { put.setEntity(new StringEntity(data, "UTF8")); } catch (UnsupportedEncodingException e) { Log.e(TAG, "UnsupportedEncoding: ", e); } put.addHeader("Content-type","SET CONTENT TYPE HERE IF YOU NEED TO"); HttpResponse response = http.execute(put); Log.d(TAG, "This is what we get back:"+response.getStatusLine().toString()+", "+response.getEntity().toString()); } catch (ClientProtocolException e) { // Log.d(TAG, "Client protocol exception", e); } catch (IOException e) { // Log.d(TAG, "IOException", e); } 

Но я должен отправить строку в формате авторизации: <Login>@<ID>:<Passsword>

Как это сделать?

    Вы уверены, что ваш сервер действительно использует базовую аутентификацию? Если это так, вы должны установить учетные данные следующим образом:

     new UsernamePasswordCredentials("Login@ID", "Passsword"); 

    В противном случае проверьте, что такое подлинный протокол аутентификации, и реализуйте его (отправьте информацию об аутентификации в заголовке или как часть URL-адреса или параметры POST и т. Д.).

    Сначала вы должны сначала посмотреть, на чем собственно HTTP Basic: http://en.m.wikipedia.org/wiki/Basic_access_authentication#section_3

    Ваш вопрос направлен не на HTTP Basic и не должен использоваться вообще из-за того, что он по своей сути небезопасен.

    Я предполагаю, что вы просите, должен быть частью URL-адреса. Даже с дополнительными мерами, такими как SSL, я все равно не буду вставлять учетные данные в URL.

    HTTP Basic определяет, как имя пользователя и пароль должны быть зашифрованы (фактически хэшированы). Нет способа иметь HTTP и формат, который вы просили.