美文网首页
企业级项目,后端与前端接口交互标准

企业级项目,后端与前端接口交互标准

作者: 雨果是程序员 | 来源:发表于2020-05-17 16:41 被阅读0次

    规定接口标准

    前后端交互,在企业级开发中,需要按照约定,制定统一的接口响应标准。这样在开发中才可以更好地的合作。接口标准是推荐的,也是必须的。

    通用标准

    • code 使用字符串类型,规定常用的响应规范:code = "200",表示成功。否则表示响应失败。code= "500",表示系统错误。
    • message 使用字符串类型,规范响应的业务消息。例如常见的异常说明和校验说明等业务信息。
    • data 前后端接口数据交互,统一使用json。data用于后端响应的数据体。

    为什么使用JSON

    JSON 是存储和交换文本信息的一种语法,它与XML具有相同的特性,是一种数据存储格式,却比 XML 更小、更快、 更易于人编写和阅读、更易于生成和解析。

    统一响应实体类

    public class CommonResult<T> {
        private String code;
        private String message;
        private T data;
    
        public T getData() {
            return data;
        }
    
        public void setData(T data) {
            this.data = data;
        }
    
        public CommonResult(String code, String message) {
            this.code = code;
            this.message = message;
        }
    
        public CommonResult(String code, String message, T data) {
            this.code = code;
            this.message = message;
            this.data = data;
        }
    
        public String getCode() {
            return code;
        }
    
        public void setCode(String code) {
            this.code = code;
        }
    
        public String getMessage() {
            return message;
        }
    
        public void setMessage(String message) {
            this.message = message;
        }
    
        public static CommonResult success() {
            return new CommonResult(SUCCESS_CODE, SUCCESS_MESSAGE);
        }
    
        public static <T> CommonResult<T> success(T data) {
            return new CommonResult(SUCCESS_CODE, SUCCESS_MESSAGE, data);
        }
    
        public static CommonResult failed() {
            return new CommonResult(FAILED_CODE, FAILED_MESSAGE);
        }
    
        public <T> CommonResult<T> data(T data) {
            return new CommonResult(SUCCESS_CODE, SUCCESS_MESSAGE, data);
        }
    
    }
    
    • 成功响应,使用success方法
    • 失败响应,使用failed方法
    • data设计为泛型,接收数据对象

    示例

    • controller接口:
    @GetMapping("/hello/result")
    @ApiOperation("get请求参数测试")
    public CommonResult<String> helloResult(@RequestParam("name") String name) {
        String hello = "Hello," + name;
        return CommonResult.success(hello);
    }
    
    • 传入参数programmer,响应:
    {
      "code": "200",
      "message": "success",
      "data": "Hello,programmer"
    }
    

    源代码

    • github地址
    • 后续会对springboot相关知识进行持续更新和分享。

    相关文章

      网友评论

          本文标题:企业级项目,后端与前端接口交互标准

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