php - 用于指示非致命服务器错误的 HTTP 状态代码

标签 php apache rest http

<分区>

我正在构建 API。我正在使用 MVC 架构,这是我自己用 PHP 编写的迷你框架。

这是 RESTful API,但也使用 NodeJS 通过 Web Sockets 提供同步实时 channel 。因此,从技术上讲,一些服务可以通过标准 REST 接口(interface)访问,其余的连续状态完整流可以通过 Web 套接字访问。

正因为如此,我在很多细粒度的场景中使用 HTTP 错误代码是非常重要的。

现在,我的问题很简单,指示非致命服务器错误的 HTTP 状态代码应该是什么?

501 表示服务器内部错误,但在这里我正在寻找无法满足请求的某些部分的情况。

感谢您的帮助。

对实际场景的更多说明

服务器成功处理了请求,但是当请求完成后,服务器无法更新日志时,就会出现这种情况。因此,它是部分实现。

最佳答案

其实想想,你好像是在一笔画定义两种情况——

The request is successfully handled by the server, but this scenario arises when after completion of the request, the server cannot update the log. Thus it is a partial fulfillment.

这实际上看起来像是两个独立的事物:

请求已成功处理,第 1 部分,因此这是一个 header 200(比方说),但是如果日志更新未完成(且仅此),则为错误 5xx。如果您可以确定未写入日志的原因,然后针对该特定原因返回特定的5xx 错误。

如果您只想返回单个 header ,那么即使请求已成功处理,如果日志未正确更新,则请求实际上未成功处理,应返回 5xx header ,因为 5xx header 将成为先例在 2xx header 上。如果您将 header 用于自己的重定向,那么您可以使用客户 header ,因为您知道如何处理它。

关于php - 用于指示非致命服务器错误的 HTTP 状态代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33097659/

相关文章:

php - 信用卡处理样本

iOS - JSON 数组的 NSJSONSerializer 解析错误

php - 线程安全和非线程安全 PHP Windows 安装包之间的技术差异是什么?

java - wss 协议(protocol)的 Apache 反向代理

带有 tomcat 和 eclipse 的 Java RESTful Web 服务给出 404

php - 使用 Zend 创建自定义 oAuth 服务器

javascript - 以 HTML 格式直接输出 PHP 代码

php - Volley 代码在android中发送空值?

javascript - 如何使用 pidCrypt 进行 AES CBC 加密,然后使用 phpseclib 解密?

php - 为什么我的 .htaccess 在部署时停止工作