java - 在 RestTemplate 代码中得到 400 Request Bad Error 但在 SOAPUI 中得到正确的响应
问题描述
在 SOAPUI 中获取值存在错误消息,但在 spring restTemplate 客户端代码中,我收到 HttpClientErrorException: 400 Bad Request。
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("Authorization", authHeader);
headers.set("Accept", MediaType.APPLICATION_JSON_VALUE);
HttpEntity<String> entity = new HttpEntity<>(requestJson, headers);
System.out.println("" + entity);
ResponseEntity<String> response=restTemplate.exchange(API_URL,HttpMethod.POST,entity,String.class);
但是如果我在上面的代码中尝试一个正确的请求,我会成功,如果我再次尝试相同的请求,我实际上需要得到“Value Already Exist”,但是我得到了 400 错误
更新
由于这是一个错误场景,我在异常正文中收到错误消息。1 - 所以我需要捕获 HttpClientErrorException 2 - 使用 getBodyAsString() 获取错误消息
解决方案
推荐阅读
- linux - echo bash 中出现额外的百分号
- wordpress - 在尝试登录网站/wp-admin 上的 wordpress 后端时,出现以下错误
- python - python函数的并行执行
- c# - 如何在 c# 或 linq asp.net 中准备好 xml 响应结果
- algorithm - 循环赛 - 动态权重
- sql - SQL 查询只显示最大值 - 怎么做?
- jquery - 拒绝设置 Unsafe header "Cookie" Hybrid App
- disk - 更改磁盘所有者(禁用读写权限)[Ubuntu 18.04][硬盘文件系统:NTFS]
- mysql - LEFT JOIN with NULL, NOT EQUAL 它们都显示出意外的结果
- mysql - docker create a new image 无法启动mysql服务