Spring Rest模板Put方法无效,为什么?

时间:2014-04-07 07:27:20

标签: android spring rest

我使用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

2 个答案:

答案 0 :(得分:1)

PUT类似于更新服务器上的现有记录,因此,如果您成功更新某些内容,则在将其更改为该状态时,您应该固有地知道新状态。

也就是说,如果您使用GET检索文档,则您拥有服务器端表示。如果您随后更改了该文档的一个或多个属性,然后将这些更改发送到服务器,则不需要告知文档已更改为什么,因为您已经更改了值,假设服务器返回成功回应。

答案 1 :(得分:-1)

很抱歉,Spring RestTemplate不是自定义用法,而是根据REST规范使用。

尝试使用org.apache.http.impl.client.DefaultHttpClientnew URL("http:...").openConnection()根据您的需求提出请求。