HttpURLConnection - Server returned HTTP response code: 400.

25/04/2019

3

Bom dia,

estou realizando a implementação de uma API Rest, onde existe um método que utiliza autenticação Bearer, onde eu passo um token que foi gerado anteriormente. A geração do token funciona normalmente, mas nesse metodo, quando faço a chamada, e ele executa com sucesso, recebo um ResponseCode 200, e consigo buscar o JSON de retorno, normalmente, mas esse metodo, irá tambem me retornar um ResponseCode 400, com um JSON que terá um retorno que irei analisar posteriormente. Mas quando tento buscar esse JSON, tenho uma exception "Caused by: java.io.IOException: Server returned HTTP response code: 400", e não consigo pegar essa resposta.

Estou iniciando na implementação de API em Rest, ainda estou aprendendo, mas acredito que eu deva estar deixando de passar algum parâmetro no header, mas não sei ao certo o que pode ser.
Segue parte do código:

try {
URL url = new URL(URLapiHom + metodo + "263650");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();

conn.setRequestMethod("POST");
conn.setRequestProperty("User-Agent", "Mozilla/5.0");
conn.setRequestProperty("Authorization", "Bearer " + token);

String urlParametros = "token=" + token;

conn.setDoOutput(true);
DataOutputStream output = new DataOutputStream((conn.getOutputStream()));
output.writeBytes(urlParametros);
output.flush();
output.close();
conn.connect();

responseCode = conn.getResponseCode();
responseMessage = conn.getResponseMessage();

BufferedReader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();

while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();

System.out.println("");
}
Responder