首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >HTTP 406和415错误代码

HTTP 406和415错误代码
EN

Stack Overflow用户
提问于 2010-07-21 05:24:51
回答 5查看 40K关注 0票数 70

我正在编写一个web服务,它只接受json,也只输出json。

因此,如果请求任何其他格式,我需要返回适当的状态代码。

看起来我有两个选择:

  1. 406 -不可接受的
  2. 415-不支持的介质类型

如果有人能告诉我这两个代码的语义,那就太好了。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-07-21 05:32:29

当服务器不能基于接受请求标头进行响应时(即它们有一个Accept标头,表明它们只需要XML),它会返回406。

当请求中发送的实体( POST或PUT中的内容)具有不受支持的媒体类型(即,它们发送了XML)时,服务器返回415。

所以..。406当你无法发送他们想要的东西时,415当他们发送你不想要的东西时。

希望这能有所帮助!

票数 143
EN

Stack Overflow用户

发布于 2010-07-21 05:36:03

  • 406如果发送了Accept标头,则无法填充。
  • 415如果发送了Content-Type,则无法使用。
票数 45
EN

Stack Overflow用户

发布于 2010-07-21 05:32:58

引用RFC2616

406不可接受

请求所标识的资源只能根据请求中发送的accept头部生成内容特征不可接受的响应实体。

当客户端查询您的服务时,检查它发送了什么Accept*头;如果它与application/json (或通配符,例如*/*)不匹配,则返回以下内容。响应应该显示“我们这里只提供JSON”。

415不支持的媒体类型

服务器拒绝为该请求提供服务,因为该请求的实体所采用的格式不受所请求方法的请求资源支持。

只返回415 Unsupported Media Type应该是“客户端发送了非JSON的东西,无法使用它”的最小响应;不确定是否有标头指示“您需要发送JSON”

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3294483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档