3
我正在尝试使用RestTemplate
以创建PUT
。出于某种原因,我无法复制我使用curl
创建的PUT
,这个过程没有任何问题。RestTemplate的用法
这里是我的curl
调用成功并返回200:
curl https://www.exampe.com \
-X PUT \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <bearer-token>" \
-v \
-d '{"json":"object"}'
这里是试图复制这种curl
调用Java代码。这段代码在我的情况下,将抛出HttpClientErrorException
与状态= 406:
boolean result = false;
String url = "https://www.example.com";
String json = "{\"json\":\"object\"}";
RestTemplate rest = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.add("Content-Type", "application/json");
headers.add("Authorization", String.format("Bearer %s", authToken));
HttpEntity<String> requestEntity = new HttpEntity<String>(json, headers);
ResponseEntity<String> responseEntity =
rest.exchange(url, HttpMethod.PUT, requestEntity, String.class);
HttpStatus status = responseEntity.getStatusCode();
什么是这些请求之间的区别?如何将Java版本融合到curl
版本?
http://garciapl.blogspot.com/2012/09/spring-rest-template-with-ssl.html – 2013-02-27 08:41:50
添加只是文档片断似乎并没有帮助。还有什么我应该看看? – 2013-02-27 08:58:53