Restful Api写法心得之三《返回值篇》

前言
温馨提示:可以订阅我的微信公众号,在手机里看技术文档也很不错哦o( ̄︶ ̄)o!

这是关于api基础写法的第三篇文章了,这里给下前两篇连接
《路径定义篇》 《参数接收篇》 ,对于本篇文章我们主要说下接口的数据返回值的问题。

格式选择

返回格式目前主流的应该只有XML、JSON两种吧,这里我们不做对比,我们使用JSON作为接口的返回格式。

数据返回格式

数据的返回格式其实是个比较纠结的问题,在restful风格中很多文章都讲解使用的是http状态码控制请求的结果状态,例如:http状态码为200~300的时候,为正常状态,response响应体即为所需要返回的数据,404时代表没有查询到数据,响应体即为空,500为系统错误,响应体也为空等等,但是这种方式也是存在很大问题的,一是http状态码是有限的,而且每个状态码都已经被赋予特殊的含义,在企业开发中当接口遇到错误的时候,我们可能更希望将结果状态码标记的更为详细,更利于前端开发者使用,毕竟写接口的目的也是方便前端使用,这样也可以降低前后端开发人员沟通成本。
下面给出我们在实际开发中使用的返回值统一格式:

package com.zhuma.demo.comm.result;
import java.io.Serializable;
import com.zhuma.demo.comm.enums.ResultCode;

/**
 * Created by zhumaer on 17/5/24.
 */
 @Data
public class Result implements Serializable {
   

	private static final long serialVersionUID = -3948389268046368059L;

	private Integer code;

	private String msg;

	private Object data;

	public Result() {
   }

	public Result(Integer code, String msg) {
   
		this.code = code;
		this.msg = msg;
	}

	public static Result success() {
   
		Result result = new Result();
		result.setResultCode(ResultCode.SUCCESS);
		return result;
	}

	public static Result success(Object data) {
   
		Result result = new Result();
		result.setResultCode(ResultCode.SUCCESS);
		result.setData(data);
		return result;
	}

	public static Result failure(ResultCode resultCode) {
   
		Result result = new Result();
		result.setResultCode(resultCode);
		return result;
	}

	public static Result failure(ResultCode resultCode, Object data) {
   
		Result result = new Result
  • 35
    点赞
  • 103
    收藏
    觉得还不错? 一键收藏
  • 16
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值