Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTTP PUT的替代机构_Http_Rest_Put - Fatal编程技术网

HTTP PUT的替代机构

HTTP PUT的替代机构,http,rest,put,Http,Rest,Put,我正在开发一个REST-ful Web服务,我对HTTP PUT方法有一个问题 我希望允许人们使用应用程序/表单数据请求主体提交内容。但是,默认响应将在application/xml中 这可以接受吗 EvertRESTful服务应为操作使用正确的HTTP方法(GET、HEAD、PUT、DELETE或POST),确保URI中包含任何作用域信息,并确保HTTP消息信封不包含另一个信封,即SOAP 形成休息的基础。 内容类型仅在单个请求的范围内重要。他们所做的只是描述正在发送的内容的格式 您的web服

我正在开发一个REST-ful Web服务,我对HTTP PUT方法有一个问题

我希望允许人们使用应用程序/表单数据请求主体提交内容。但是,默认响应将在application/xml中

这可以接受吗


Evert

RESTful服务应为操作使用正确的HTTP方法(GET、HEAD、PUT、DELETE或POST),确保URI中包含任何作用域信息,并确保HTTP消息信封不包含另一个信封,即SOAP


形成休息的基础。 内容类型仅在单个请求的范围内重要。他们所做的只是描述正在发送的内容的格式

您的web服务应该提供它能够提供的对客户端请求最可接受的响应。客户端请求应该包括一个Accept标头,该标头描述可接受的内容类型。如果您的服务无法提供此标题中的任何内容类型,则返回
406 Not Acceptable

在您的情况下,如果您的客户端
GET
请求在Accept头中包含
application/xml
,则可以使用
application/xml
进行响应,而不考虑对请求的资源发出的任何
PUT
请求

编辑:

不可接受的for
406
包括一个注释,其中包含以下内容:

注意:允许HTTP/1.1服务器返回以下响应: 根据中发送的accept标头,不可接受 要求在某些情况下,这甚至可能比发送 406答复。鼓励用户代理检查 确定其是否可接受的传入响应


因此,您可以随时返回
application/xml

这篇有趣的文章,但它没有回答我的问题。。示例:我将一篇新文章放在/articles/firstpost上,我可以选择使用application/xml或application/form数据的内容类型。我选择后者。然后我对这篇文章做了一个了解,我收到了application/xml表示。。这可以吗?对不起,我对REST还是比较陌生,但据我所知,这实际上取决于客户端如何使用XML。消息实体应该采用最适合客户端的数据格式,并且不需要对问题进行特定的解析,因为这会将客户端和服务耦合在一起。这里有一篇文章对此进行了更多的讨论。您认为应用程序/xml可能不遵循REST原则的原因是什么?