gpt4 book ai didi

如果请求错误,java 休息调用响应主体会丢失

转载 作者:行者123 更新时间:2023-12-01 20:17:34 24 4
gpt4 key购买 nike

我使用任何休息客户端点击下面的网址,我得到了 api 响应:400 带响应正文的错误请求

输入参数

POST http://SOME.IP:8008/equipment_api/F0-03-8C-C3-D3-CC/832
HEADERS
Content-Type application/json
X-RequestID 1234

BODY
{
"items":[{"updateValue":1, "updateKey": "RESETDEV"}],
"sync":"false"
}

Response :400 Bad Request
{
"error": "RESETDEV is not a valid key."
}

但是java简单客户端不显示响应正文..下面是java代码..它只是给出400错误请求。

 public static void main(String[] args) {
try {
String urlParameters = " {\r\n" +
"\"items\":[{\"updateValue\":\"Hi\", \"updateKey\": \"RESETDEV\"}],\r\n" +
"\"sync\":false\r\n" +
"}";
URL url = new URL("http://SOME.IP:8008/equipment_api/F0-03-8C-C3-D3-CC/832");
URLConnection conn = url.openConnection();
conn.setRequestProperty("content-type", "application/json");
conn.setRequestProperty("X-RequestID", "1234");
conn.setDoOutput(true);
OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream());
writer.write(urlParameters);
writer.flush();
String line;
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));

while ((line = reader.readLine()) != null) {
System.out.println(line);
}
writer.close();
reader.close();
}catch(Exception ex) {
System.out.println("some error :: "+ex.toString());
}
}

最佳答案

尝试使用以下代码

final String uri = "http://SOME.IP:8008/equipment_api/F0-03-8C-C3-D3-CC/832";

RestTemplate restTemplate = new RestTemplate();

HttpHeaders headers = new HttpHeaders();
headers.setAccept(Arrays.asList(MediaType.APPLICATION_JSON));
HttpEntity<String> entity = new HttpEntity<String>("X-RequestID", "1234");

ResponseEntity<String> result = restTemplate.exchange(uri, HttpMethod.GET, entity, String.class);
System.out.println(result);

用 Try Catch 包裹起来。

关于如果请求错误,java 休息调用响应主体会丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58950267/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com