0

我最近决定从我的 PHP 应用程序发送正确的 HTTP 标头。
由于我以前从未这样做过,所以我有几个非常基本的问题。

状态码 200 和 404 似乎很明显。
但是其他的呢?

例如,如果用户必须通过 HTML 表单登录才能使用该页面,是否允许/推荐/不推荐使用 403?

415文件上传怎么样?例如,如果用户上传带有不受支持的扩展名的图像,设置 415 标头是否是个好主意?

4

4 回答 4

1

这取决于您创建的应用程序。

如果您创建 restfull 应用程序,则必须使用正确的状态代码。但是,当您创建后端生成的网站时,如何处理客户端/服务器错误和路由取决于您。

我认为它唯一的一条规则 - 为了获得良好的用户体验 - 以正确的方式处理所有错误(如果 401 然后重定向到登录等)

于 2014-02-25T22:21:57.817 回答
1

W3C 认可代码的完整列表在这里。这些定义包含关于何时应该使用和不应该使用每个代码的明确指导。例如,您建议使用的 403 与 W3C 定义不一致。

于 2014-02-25T22:21:38.003 回答
1

双重提交可以返回状态 409(冲突),未经授权的提交可以返回状态 401。对于错误请求(无法处理),您可以返回状态 422。这里这里有更多关于 HTTP 状态代码的建议。

于 2014-02-25T22:12:30.563 回答
1

我认为您应该将这些状态代码用于典型网站:

  • 200 好的(如果一切正常,即使有人上传了损坏的文件也是如此 - 向用户提供错误消息)
  • 301永久重定向
  • 302 暂时重定向
  • 304 未修改
  • 404 未找到
  • 410 走了

如果您正在构建 REST Web 服务,则可以使用更多状态代码。但是对于一个典型的网站,上面列出的状态代码很好。

于 2014-02-25T22:25:44.713 回答