我使用Android的Spring Rest Template,我将使用PUT方法更新方法。但令人惊讶的是,PUT方法不支持解析结果对象,它们只是无效,为什么会这样?我对正确的REST支持的理解是应该返回更新的对象。什么是春天的理性是这样做的呢?
2.5.6 HTTP PUT
public void put(String url, Object request, Object... urlVariables) throws RestClientException;
public void put(String url, Object request, Map<String, ?> urlVariables) throws RestClientException;
public void put(String url, Object request, Map<String, ?> urlVariables) throws RestClientException;
http://docs.spring.io/spring-android/docs/1.0.2.BUILD-SNAPSHOT/reference/html/rest-template.html
答案 0 :(得分:1)
PUT类似于更新服务器上的现有记录,因此,如果您成功更新某些内容,则在将其更改为该状态时,您应该固有地知道新状态。
也就是说,如果您使用GET检索文档,则您拥有服务器端表示。如果您随后更改了该文档的一个或多个属性,然后将这些更改发送到服务器,则不需要告知文档已更改为什么,因为您已经更改了值,假设服务器返回成功回应。
答案 1 :(得分:-1)
很抱歉,Spring RestTemplate
不是自定义用法,而是根据REST规范使用。
尝试使用org.apache.http.impl.client.DefaultHttpClient
或new URL("http:...").openConnection()
根据您的需求提出请求。