亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

接口是返回數據好還是返回結果好

接口是返回數據好還是返回結果好

PHP
慕標琳琳 2019-03-18 18:09:34
問題1比如一個接口:提供多行數據,最后一行顯示總計或者平均值數據是一定要返回的,就是最后的總計或者平均值是后端計算好直接返回,還是客戶端自己通過數據自己計算 問題2比如一個銀行卡賬戶接口:數據庫:表1:卡號,銀行id表2:銀行id,銀行名稱提供的接口(要顯示卡號,銀行名稱)方法1 返回2個對象:卡號和銀行id對應的對象,銀行id和銀行名稱對應的對象??蛻舳俗约航M裝數據 方法2 服務端根據銀行id組裝好數據返回1個對象:卡號和銀行名稱對應的對象。 哪個方法好
查看完整描述

4 回答

?
蕪湖不蕪

TA貢獻1796條經驗 獲得超7個贊

這個要結合具體場景來看。如果數據量很小的話,前端后端都沒有問題,如果數據量很大的話,肯定是后端處理合適。另外,還要取決于后臺現有接口的設計原則,比如接口的定位是提供通用的基礎數據,這個接口不僅為你服務,也為其他應用服務,這時計算可能就是放到前端做合適,因為后端提供的是通用接口。除非,獲取平均值也是一個通用需求,不然沒有必要為了你一個人,而改變原有接口。

根據問題修改新增:
其實還是我上面解釋的,如果后端的接口就是為你一個應用服務的,肯定是要盡量把邏輯做到后端,返回的字段也盡量適配前端需求。但如果后端提供的接口是抽象度較高的通用接口,則不會輕易為一個應用前端改變。這個時候做法有兩種:1. 前端處理起來并不是很麻煩就自己搞定,比如幾十條記錄求個平均值; 2. 如果前端用起來很不方便或是性能有問題,則需要引入中臺層服務,說白了就是在原始的接口之上,根據業務需求再封裝一層接口。

查看完整回答
反對 回復 2019-03-18
?
開滿天機

TA貢獻1786條經驗 獲得超13個贊

最好是服務端處理,前端只負責展示

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

TA貢獻1725條經驗 獲得超8個贊

你自己想清楚,是 “計算平均值”,還是“獲取一堆數據”,這兩者區別很明顯吧。如果兩者都可以達到目的,那么選擇“盡量不減少信息”的方式,前提是,實現上沒有問題。(什么叫實現有問題,你數據是上萬條的,那么傳遞這上萬條數據也許就是“無法實現”的,但是你數據可預見的一共也有幾十條,那么實現就沒有問題)

要說“接口設計”的話,第一層設計,一定是“面向數據”,而不是“面向業務”。

查看完整回答
反對 回復 2019-03-18
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

肯定是返回結果值好啊,一般數據處理都放在后端,前端只要展示結果就好了。

查看完整回答
反對 回復 2019-03-18
  • 4 回答
  • 0 關注
  • 905 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號