10.2、规范化返回值

建立规范化的RESTFul API 风格返回值,是应用系统对外开放的准则。

默认规范化

在 Hoa Framework 框架中,默认对所有的 接口返回值进行了规范化处理,默认规范为:

{
  "status": 200,  // 状态码
  "result": "Powered by Monk",  // 接口真正返回值
  "success": true,  // 是否成功请求(返回200,则成功)
  "error": null,  // 是否有异常
  "unAuthorizedRequest": false  // 是否是未授权请求
}

关闭规范化

当然,如果不希望做规范化处理,可在 appsetting.json 中关闭即可:

{
 "AppConfigOptions": {
    "EnableGlobalAuthorizationFilter": false,
    "EnableGlobalUnifiedResultFilter": true,   // 是否启用规范化处理,默认true
    "EnableCorsSupport": false,
    "EnableGlobalPerformanceAnalysis": true
  },
}

常见几种规范化返回方式

请求成功规范

{
  "status": 200,  // 状态码
  "result": "Powered by Monk",  // 接口真正返回值
  "success": true,  // 是否成功请求(返回200,则成功)
  "error": null,  // 是否有异常
  "unAuthorizedRequest": false  // 是否是未授权请求
}

模型验证失败规范

{
  "status": 400,  // 状态码
  "result": null,  // 接口真正返回值,此时无返回
  "success": false,  // 是否成功请求(返回200,则成功)
  "error": [  // 验证失败信息
    {
      "field": "Email",
      "message": "The Email field is required."
    },
    {
      "field": "Password",
      "message": "The Password field is required."
    }
  ],
  "unAuthorizedRequest": false  // 是否是未授权请求
}

服务异常规范

{
  "status": 500,  // 状态码
  "result": null,  // 接口真正返回值,此时无返回
  "success": false,  // 是否成功请求(返回200,则成功)
  "error": "Oops! 出错了!",  // 异常信息
  "unAuthorizedRequest": true  // 是否是未授权请求
}

未授权规范

{
  "status": 401,  // 状态码
  "result": null,  // 接口真正返回值,此时无返回
  "success": false,  // 是否成功请求(返回200,则成功)
  "error": "401 Unauthorized",  // 未授权信息
  "unAuthorizedRequest": true  // 是否是未授权请求
}

资源禁止访问规范

{
  "status": 403,  // 状态码
  "result": null,  // 接口真正返回值,此时无返回
  "success": false,  // 是否成功请求(返回200,则成功)
  "error": "403 Forbidden",  // 禁止资源访问
  "unAuthorizedRequest": true  // 是否是未授权请求
}

最后更新于