规定接口标准
前后端交互,在企业级开发中,需要按照约定,制定统一的接口响应标准。这样在开发中才可以更好地的合作。接口标准是推荐的,也是必须的。
通用标准
- 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相关知识进行持续更新和分享。
网友评论