【发布时间】:2022-06-17 06:56:19
【问题描述】:
recibo esta excepción "java.io.IOException: el servidor devolvió el código de respuesta HTTP: 400" al obtener InputStream。不,他 podido conectarme al servidor, me arroja en occasiones error 400 y cuando hago modificaciones me da un error 500. el asunto es que me dan una URL en la cual lleva una apikey por ejemplo https://algoconstrudio/loginCajetin?apikey=qweertrtyu2134324 , cuando realizo una Consulta en postman me da una respuesta de un json el metodo utilizado para realizar la Consulta es por POST pero ademas debo enviar por el body tres parametros obligatorios para poder acceder a la respuesta que emite, la pregunta es la siguiente como puedo enviar en Java usando HttpUrlConnection los tres parametros utilizados en el body en postman y recibir la respuesta, este es el código que tengo por los momentos: ** Necesito de su ayuda y colaboración ya llevo varios días intentando hacer esto pero he podido resolverlo y muchas gracias a todos aquellos que me brinden su ayuda y apoyo。
URL url = new URL("https://algoconstrudio/loginCajetin?apikey=qweertrtyu2134324");
String JSONSend = "{'client_secret':'1sd51awd5-65a4we5dd1-sa1d', 'client_id':'4s54sdawdawdw-aw5d451', 'type':'authorization'}";
byte[] postDataBytes = JSONSend.getBytes("utf-8");
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
conn.setRequestProperty("client_secret", "1sd51awd5-65a4we5dd1-sa1d");
conn.setRequestProperty("client_id","4s54sdawdawdw-aw5d451");
conn.setRequestProperty("type","authorization");
conn.setDoInput(true);
conn.setDoOutput(true);
try( DataOutputStream wr = new DataOutputStream( conn.getOutputStream())) {
wr.write( postDataBytes );
wr.flush();
wr.close();
}
//conn.getOutputStream().write(postDataBytes);
Reader in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuilder sb = new StringBuilder();
for (int c; (c = in.read()) >= 0;)
sb.append((char)c);
String response = sb.toString();
//JSONParser parser = new JSONParser();
String jsonResult = (response);
return jsonResult;
}
【问题讨论】:
-
Stack Overflow 主站点上的所有问题和答案都是 required to be in English。请翻译您的问题或尝试Stack Overflow en español,但请务必关注他们的content guidelines 和How to Ask 以确保提出主题问题。
标签: java httpurlconnection inputstreamreader