4Manuals

  • PDF Cloud HOME

org.springframework.web.client.HttpClientErrorException:400错误的PUT请求 Download

    春季启动-Couchbase AbstractCouchbaseConfiguration-如何避免覆盖不必要的方法 我不知道(未解决的编译问题:) 加载数据并推送到未显示的RecyclerView中 调用Model类的函数时出现java.lang.NullPointerException 字符串数组在for循环中初始化时忽略索引0 Spring MVC @ModelAttribute未填充AJAX发布请求 需要建议在Java中使用哪个数据库/存储来存储RaftLogs(实现Raft Consensus Algorithm) Flutter:Java使用或覆盖已弃用的API @ EnableOAuth2Sso和@EnableResourceServer(同一应用程序中的客户端和资源行为) 中断可运行线程的问题

我一直在尝试使用restTemplate使用带有PUT动词的API。我有以下代码

 RestTemplate restTemplate = new RestTemplate();
 HttpHeaders headers = new HttpHeaders();
 headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
 HttpEntity<String> entity = new HttpEntity<String>(jsonString,headers);
 restTemplate.put(Url+"/'"+id,entity, String.class);

我的jsonString具有以下内容。

{ 
 "id":"asdfafaff-fsf3-4b1c-a7c4-13352252daa",
 "product":"MyProductName",
 "Organization":"my company name test",
 "Organizationid":"tert122Teq-rtq-q556trt-qtqtqt3-131rtqtqt",
 "ProductProperties":"Hc2",
 "Locations":{ 
   "results":[ 

    ]
 },
 "Status":"Gone",
 "DisabledByType":null,
 "roles":null,
 "Url":"wwww.google.com",
 "Key":"xxxxxxxxxx",
 "Secret":"xxxxxxxxxxx",
 "Hash":"yyhhytyutyutuet",
 "validity":null,
 "Type":"basic",
 "Reason":null,
 "Barcodes":{ 
  "results":[ 
     "tetetetetetete"
   ]
 },
 "RelatedBarcodes":{ 
  "results":[ 

  ]
},
 "CustomizedFields":{ 
   "results":[ 

  ]
}}

一切正常,但我收到此错误

HttpClientErrorException: 400 Bad Request.
` at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:94)
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:79)
at org.springframework.security.oauth2.client.http.OAuth2ErrorHandler.handleError(OAuth2ErrorHandler.java:172)
at org.springframework.web.client.ResponseErrorHandler.handleError(ResponseErrorHandler.java:63)
at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:730)
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:688)
at org.springframework.security.oauth2.client.OAuth2RestTemplate.doExecute(OAuth2RestTemplate.java:128)
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:644)
at org.springframework.web.client.RestTemplate.put(RestTemplate.java:459)`

可能是什么问题?

1 个答案:

答案 0 :(得分:1)

当我们不知道您要使用的API时,不可能指出确切的问题是什么。

HTTP状态400表示服务器由于语法无效而无法处理您发送的请求。这是非常通用的消息,其背后可能有无数原因。

您必须自己弄清楚是什么导致了此响应。您可以通过查看收到的回复的正文来实现。由于尚未声明要使用哪个ResponseErrorHandler,因此已应用默认的DefaultResponseErrorHandler。打开调试模式,并在方法public void handleError(ClientHttpResponse response)上放置一些断点。在那里,您应该能够从发生问题的响应中获得更多详细信息,并相应地解决您的请求。



Similar searches
    jQuery验证插件和Ajax提交 如何在Dart / Flutter上覆盖变量 c#||我需要一个变量来控制另一个变量,但是它们都属于自己的范围。我该怎么办? 基于两个变量的条件匹配 固定列的表格无法正确呈现