接受HTTP请求中的标头

时间:2018-06-24 02:20:48

标签: http request

我正在尝试一般地学习Web服务,并且对此有一个小疑问。

发送HTTP请求时,如果我在Accept标头中提到特定格式(例如JSON),并且假设服务器不支持该格式,那么它将是网络调用错误,还是服务器仍将以其支持的任何格式进行响应?

我知道在发送POST请求时,客户端会通过名称“ Content Type”发送另一个标头,如果服务器不支持该格式,那么它将以415错误返回。 (不受支持的媒体类型)。

2 个答案:

答案 0 :(得分:2)

由服务器决定。不需要注意Accept标头字段。

  

没有任何Accept标头字段的请求表示用户代理   将接受任何媒体类型作为响应。如果标题字段存在   在请求中,并且没有可用的表示形式   回应的媒体类型被列为可接受的来源   服务器可以通过发送406(不是   接受)响应或通过处理以下内容忽略标头字段   就像不需要进行内容协商一样。

(来自https://www.greenbytes.de/tech/webdav/rfc7231.html#rfc.section.5.3.2.p.7

答案 1 :(得分:0)

对于Web服务,服务器将负责表示它打算支持的格式类型,无论它是使用JSON还是XML。

基于从客户端接收的数据,服务器应验证客户端提供的格式。如果符合指定的格式,则服务器将相应地响应终点的意图。另一方面,如果不合适,则服务器应正常响应,表明Web服务不支持格式(JSON / XML)。

我希望能回答您的问题。祝你有美好的一天!

相关问题