依赖模块的{h}错误代码

时间:2018-04-02 16:03:59

标签: asp.net-mvc rest http httpresponse

我正在研究网络平台的插件。 我有一个Core插件(需要安装和启用的核心库)和一个功能插件。 我想在安装Core插件但未启用时,功能插件无法正常工作。我一直在检查Core是否已启用并希望将其返回给所有类型的请求 - json,xml,html,...

我想以良好的错误代码返回客户端响应,但不确定哪一个是最好的。 我在考虑403或大多数人做500。

有什么建议吗?

此致 鲍里斯

1 个答案:

答案 0 :(得分:0)

您应该使用的返回代码实际上取决于资源状态的语义。这些问题的答案应确定适当的状态代码:

  • 为什么Core被禁用?它是错误状态(意外情况,在正常情况下不应该发生)或正常状态吗?
  • 是否为所有客户端或某些授权用户禁用了服务?
  • 客户应该将当前状态视为临时状态还是永久状态?

以下是一些合适的错误代码(在某些条件下):

  • 403 Forbidden

    只有当某些用户仍然可以成功调用该服务时,才应使用此代码。

  • 500 Internal Server Error

    这个通用错误代码太过分了。只有在您无法选择更具体的错误代码时才选择它。

  • 503 Service Unavailable

    如果当前状态是暂时的,应该很快修复,这是一个很好的候选人。