Estou migrando alguns códigos do cliente Apache HTTP para OkHttp, pois o cliente Apache foi preterido na API 23 e agora, na API 29 totalmente eliminado. Em geral, não estou tendo muitos problemas, mas há uma linha para a qual não consigo encontrar um equivalente:
myHttpPost.addHeader(new BasicScheme().authenticate(
new UsernamePasswordCredentials(myUser, myPassword), HttpPost));
Eu depurei esta linha e ela gerou uma String semelhante a esta:
Autorização: Básico RU5YRU5EUkEASDASDQWEQFASkLTk2ZjgtOTASDQWEkMWNkYTA1
Lendo sobre isso na documentação , posso ver que o authenticate
método:
Produz uma string de autorização para o determinado conjunto de credenciais
E que UsernamePasswordCredentials
basicamente cria essas credenciais a partir do meu usuário e senha mas não consigo encontrar o equivalente no OkHttp, alguém já enfrentou esse problema?
Eu consegui encontrar uma classe nos docs OkHttp , um Authenticator
, mas eu não tenho certeza que é o que estou procurando.
Você está procurando por Credentials.basic () .
String credential = Credentials.basic("jesse", "password1");
return Request.Builder()
.header("Authorization", credential)
...
.build();
Este artigo é coletado da Internet.
Se houver alguma infração, entre em [email protected] Delete.
deixe-me dizer algumas palavras