Eu estou tentando fazer um cliente para acessar um webservice e estou tendo um problema:
segue a documentação e como estou fazendo:
Faça um POST para a URL desejada:
1.No “headers” da requisição, informe a sequência codificada em Base 64 que contém o ClientId e o ClientSecret da
sua aplicação. O campo deve ter o formato: Authorization: Basic ;
- No corpo (body) da requisição deve conter o escopo da API a ser usada após, “pos.api” ou
“Redemptions.api” e o grant_type “client_credentials”. Ex: Formato scope: pos.api e grant_type: client_credentials;
String url: https://uat-api.dotzlabs.com/accounts/v1/connect/token
String json = “{“grant_type”: “client_credentials”, “scope”: “pos.api”}”;
ClientId=213213213213
ClientSecret=[telefone removido]
estou fazendo assim:
webResouce = client.resource(url);
try {
String saux = dotsp.getClientId()
+ ":"
+ dotsp.getClientSecret();
String Authorization = DatatypeConverter.printBase64Binary(saux.getBytes());
clientResponse = webResouce.accept("application/json")
.type("application/json")
.header("Authorization", "Basic " + Authorization)
.post(ClientResponse.class,
json);
me retorna um json:
{
“code”: “042”,
“message”: “Deve ser informado os headers Authorization e Content-Type, em conjunto com os valores das propriedades grant_type (obrigatório), scope (opcional), username (opcional), password (opcional) e/ou access_token (opcional).”
}
o que eu estou fazendo de errado: rs…