我需要HTTP GET请求的内容类型标头吗?

| 据我了解,可以在两个地方设置内容类型: 客户端为要发送到服务器的正文设置内容类型(例如,用于发布) 服务器设置响应的内容类型。 这是否意味着我不必为所有get请求(客户端)设置内容类型。如果可以,那应该是什么内容类型? 我还读了几篇文章,指出客户端的内容类型指定了客户端希望接收的内容类型。所以也许我的观点1不正确?     
已邀请:
根据RFC 7231第3.1.5.5节:   产生包含有效载荷主体的消息的发送者应该在该消息中产生Content-Type头字段,除非发送者不知道所表示的预期媒体类型。如果Content-Type头域不存在,则接收者可以假定媒体类型为“ application / octet-stream \”([RFC2046],第4.5.1节),或者检查数据以确定其类型。 这意味着仅应为“ 1”和“ 2”请求设置“ 0” HTTP标头。     
获取请求不应具有内容类型,因为它们没有请求实体(即主体)     
GET请求可以具有\“ Accept \”标头,该标头说明客户端可以理解的内容类型。然后,服务器可以使用它来决定发送回哪种内容类型。 它们是可选的。 http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1     
接受的答案是错误的。引用是正确的,断言PUT和POST必须具有它是不正确的。不需要PUT或POST实际上具有其他内容。也没有禁止GET实际包含内容的禁令。 RFC明确说明了它们的意思..如果您的一方(客户端或原始服务器)将发送除HTTP标头之外的其他内容,则应指定Content-Type标头。但是请注意,可以省略Content-Type并且仍然包含内容(例如,使用Content-Length标头)。     
不能在GET消息上传递内容类型的问题是,确保内容类型无关紧要,因为服务器端还是要确定内容。 我遇到的问题是,现在有很多地方将其Web服务设置为足够聪明,以接收您传递的内容类型并以您请求的“类型”返回响应。 例如。我们当前正在使用默认为JSON的位置进行消息传递,但是,他们已经设置了Web服务,因此,如果您传递xml的内容类型,则它们将返回xml而不是其JSON默认值。我认为前进是一个好主意     

要回复问题请先登录注册