6306得票42回答
HTTP中POST和PUT有什么区别?

背景信息分析: 根据RFC 2616,§ 9.5,POST用于创建资源: POST方法用于请求源服务器接受包含在请求中的实体作为Request-Line中标识的资源的新下级。 根据RFC 2616,§ 9.6,PUT用于创建或替换资源: PUT方法请求将封装的实体存储在提供的Reques...

4179得票35回答
3751得票33回答
如何使用cURL发送JSON数据的POST请求?

我使用Ubuntu并在其上安装了cURL。 我想用cURL测试我的Spring REST应用程序。 我已经在Java端编写了我的POST代码,但是我想用cURL进行测试。 我试图发布JSON数据。 示例数据如下:{"value":"30","t...

3066得票24回答
HTTP GET带有请求体

我正在为我们的应用程序开发一个新的RESTful webservice。 当客户端对某些实体进行GET操作时,客户端可以请求实体的内容。如果他们想添加一些参数(例如对列表进行排序),他们可以将这些参数添加到查询字符串中。 或者,我希望人们能够在请求正文中指定这些参数。HTTP/1.1似乎并...

1350得票14回答
SOAP vs REST(区别)

我已经阅读了关于SOAP和REST作为Web服务通信协议之间差异的文章,但我认为REST相对于SOAP的最大优势是: 1. REST更加动态,无需创建和更新UDDI(通用描述、发现和集成)。 2. REST不仅限于XML格式。RESTful Web服务可以发送纯文本/JSON/XML。 但...

1309得票18回答
当资源已经存在时,POST请求的HTTP响应代码是什么?

我正在构建一个服务器,允许客户端存储对象。这些对象在客户端完全构造,包括对象ID在内,而这些ID对于对象的整个生命周期都是固定的。 我已经定义了API,使得客户端可以使用PUT创建或修改对象:PUT /objects/{id} HTTP/1.1 ... {json representati...

1232得票16回答
在REST API实际场景中使用PUT和PATCH方法的区别

首先,一些定义: PUT在RFC 2616第9.6节中有定义: PUT方法请求将封装的实体存储在提供的Request-URI下。如果Request-URI引用已经存在的资源,则应将封装的实体视为修改后的版本,驻留在原始服务器上。如果Request-URI没有指向现有资源,并且该URI能够...

1118得票23回答
如何为HttpClient请求设置Content-Type头部?

我正在尝试根据我调用的API要求设置HttpClient对象的Content-Type头。 我尝试如下设置Content-Type: using (var httpClient = new HttpClient()) { httpClient.BaseAddress = new U...

1059得票17回答
HTTP DELETE请求是否允许实体正文?

当发出HTTP DELETE请求时,请求URI应完全标识要删除的资源。但是,在请求实体正文中添加额外元数据是否允许?

1040得票10回答
我应该使用哪个状态码来表示验证失败或重复无效?

我正在构建一个基于REST的应用程序,并到达为每个请求指定状态代码的点。 当请求未通过验证或请求试图在我的数据库中添加重复项时,我应该发送哪个状态代码? 我已经查看了http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html,但它们似乎都不太合...