为了账号安全,请及时绑定邮箱和手机立即绑定

接口是返回数据好还是返回结果好

接口是返回数据好还是返回结果好

PHP
慕标琳琳 2019-03-18 18:09:34
问题1比如一个接口:提供多行数据,最后一行显示总计或者平均值数据是一定要返回的,就是最后的总计或者平均值是后端计算好直接返回,还是客户端自己通过数据自己计算 问题2比如一个银行卡账户接口:数据库:表1:卡号,银行id表2:银行id,银行名称提供的接口(要显示卡号,银行名称)方法1 返回2个对象:卡号和银行id对应的对象,银行id和银行名称对应的对象。客户端自己组装数据 方法2 服务端根据银行id组装好数据返回1个对象:卡号和银行名称对应的对象。 哪个方法好
查看完整描述

4 回答

?
芜湖不芜

TA贡献1796条经验 获得超7个赞

这个要结合具体场景来看。如果数据量很小的话,前端后端都没有问题,如果数据量很大的话,肯定是后端处理合适。另外,还要取决于后台现有接口的设计原则,比如接口的定位是提供通用的基础数据,这个接口不仅为你服务,也为其他应用服务,这时计算可能就是放到前端做合适,因为后端提供的是通用接口。除非,获取平均值也是一个通用需求,不然没有必要为了你一个人,而改变原有接口。

根据问题修改新增:
其实还是我上面解释的,如果后端的接口就是为你一个应用服务的,肯定是要尽量把逻辑做到后端,返回的字段也尽量适配前端需求。但如果后端提供的接口是抽象度较高的通用接口,则不会轻易为一个应用前端改变。这个时候做法有两种:1. 前端处理起来并不是很麻烦就自己搞定,比如几十条记录求个平均值; 2. 如果前端用起来很不方便或是性能有问题,则需要引入中台层服务,说白了就是在原始的接口之上,根据业务需求再封装一层接口。

查看完整回答
反对 回复 2019-03-18
?
开满天机

TA贡献1786条经验 获得超13个赞

最好是服务端处理,前端只负责展示

查看完整回答
反对 回复 2019-03-18
?
qq_遁去的一_1

TA贡献1725条经验 获得超7个赞

你自己想清楚,是 “计算平均值”,还是“获取一堆数据”,这两者区别很明显吧。如果两者都可以达到目的,那么选择“尽量不减少信息”的方式,前提是,实现上没有问题。(什么叫实现有问题,你数据是上万条的,那么传递这上万条数据也许就是“无法实现”的,但是你数据可预见的一共也有几十条,那么实现就没有问题)

要说“接口设计”的话,第一层设计,一定是“面向数据”,而不是“面向业务”。

查看完整回答
反对 回复 2019-03-18
?
慕慕森

TA贡献1856条经验 获得超17个赞

肯定是返回结果值好啊,一般数据处理都放在后端,前端只要展示结果就好了。

查看完整回答
反对 回复 2019-03-18
  • 4 回答
  • 0 关注
  • 878 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信