今天,让我们谈谈Spring Boot如何实现优雅的数据响应:统一的结果响应格式,简单的数据包装。
无论系统的大小如何,大多数春季启动项目都为前端或其他服务调用提供了RESTFUL + JSON接口。均匀格式是彼此良好治疗的程序猿的象征,也是减少关节责骂的基本保证。
通常,响应结果需要包括业务状态代码,响应描述,响应时间戳,响应内容,例如:
业务状态代码分为两个派系:一个是建议使用HTTP响应代码作为接口业务返回;另一个是HTTP响应代码返回200,响应状态由响应主体中的单独字段表示。这两种方法具有其自己的优势和缺点。我个人推荐第二个,因为许多Web服务器已截取HTTP状态代码的处理功能,并且状态代码的数量有限且不灵活。例如,返回200表示接口处理成功且正常响应。现在有一个状态代码可以指示接口处理成功且正常响应,但是请求数据状态是错误的,您可以返回到2001。
定义数据响应的第一步以返回统一响应格式。不管接口正常或异常返回,返回指挥官的结构格式不应更改。
这样,只要您以控制器的方法返回,接口响应将是一致的,但是这将构成许多固定的代码模板,例如以下内容:
呼叫接口的结果是:
在返回响应结果的前提下,如何减去这些重复的代码,例如:
这需要春季的帮助。
代码首先:
上面的代码是春季类的模板方法,根据春季的要求实现,只有两个需要特别注意的地方,即代码中标记为1和2。
首先,该行,即方法,该方法是验证该方法的前判断以及执行方法的方法。这是一种返回类型,可以根据控制器方法确定是否需要执行。
然后专注于下一行,这条线是一个坑和一个大坑。如果您不熟悉春季结构,那么您一定会长时间徘徊,并且没有魔术方法。
代码2的行是判断方法是否返回类型的结果。如果是这样,返回对象将被序列化并返回。
这是因为分别处理响应类型的类型并将数据用于数据转换。处理响应结果时,将在方法中计算响应体大小。父类方法的定义是重写该方法。第一个参数是响应对象。它将报告。
当然,直接返回的场景并不多,一天可能突然出现在一个特殊的界面中。
最简单的应用程序显示在上面,我们还可以实现更多的扩展。例如:
许多其他游戏玩法将不会一个人列出。
上面正常响应的数据仅优雅。如果您想完成,您仍然需要考虑异常界面。您没有大量的业务逻辑。这太丑陋了。稍后将还有另一篇文章,重点是界面在看起来异常时如何返回统一的结果响应。
作者:看山。
在密码世界中游泳并享受生活。
如果文章对您有所帮助,请喜欢,收集和关注。请注意公共帐户“山之屋”并找到另一个世界。