美文网首页
接口返回数据结构以及状态码如何定义

接口返回数据结构以及状态码如何定义

作者: LOC_Thomas | 来源:发表于2019-03-05 17:24 被阅读0次

    数据返回格式

    • 正常返回
      • applicaiton/json格式进行返回数据
      • data具体的业务数据
      • http status code为200
      • traceId为唯一的请求id
    • 业务逻辑异常,为了统一返回的数据结构,统一使用了zalando/problem项目作为返回的数据结构。主要包括:
      • 定义统一的业务异常类,然后统一捕获该异常类,然后转换数据结构。
      • applicaiton/json格式进行返回数据
      • detail为对应的错误信息简单描述
      • code为对应的业务错误码
      • type为异常请求的uri
      • http status code为200
      • traceId为唯一的请求id
    • 请求异常,统一识别异常类型,然后转换数据结构
      • applicaiton/json格式进行返回数据
      • detail为对应的错误信息简单描述
      • code为对应的业务错误码
      • type为异常请求的uri
      • http status code为400、401、403、404、405、406、415
      • traceId为唯一的请求id
    • 非业务异常类,统一处理
      • applicaiton/json格式进行返回数据
      • detail为对应的错误信息简单描述
      • code为对应的错误码
      • type为异常请求的uri
      • http status code为500、501
      • traceId为唯一的请求id

    统一异常捕获

    • 通过继承zalando/problem-spring-web项目的ProblemHandling
    • 通过使用@RestControllerAdvice来统一捕获异常
    • 额外定义业务异常类的统一处理方法
    • 通过使用ResponseBodyAdvice接口和@RestControllerAdvice来统一添加traceId和请求的uri

    相关文章

      网友评论

          本文标题:接口返回数据结构以及状态码如何定义

          本文链接:https://www.haomeiwen.com/subject/wbmouqtx.html