我有一个宁静的web服务,为此我写了一个新的方法调用。新方法调用的目的是将某个人的状态撤销为“否”。Restful webservices ....放置或发布更新
我要发送的请求中只有一个Person_Id,状态需要更改为“NO”。
我应该使用PUT还是POST来做到这一点?
如果我使用put,我可以只发送person_id作为路径参数,根本不使用任何xml。 (like : http://serverName/PersonServices/Person/123456)
和在服务层,我有我这样的代码。
@PUT
@Path("/Person/{person_Id}")
@Consumes("application/xml")
@Produces("application/xml")
public JAXBElement<GetUsageTokenType> updateLicenseStatus(
@PathParam("person_Id") final Long personId) {
//code to change the status
}
或者我应该使用POST做到这一点... 难道我说得对,如果我使用POST,我需要发送XML格式?
这是用于POST&PUT的W3C HTTP RFC:http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.5 –
下面是关于REST和POST在REST中的类似问题:http://stackoverflow.com/q/630453/346561 –