API 入門 (26) 設(shè)計(jì) API 的數(shù)據(jù)——查詢參數(shù)數(shù)據(jù)

上一篇文章中,我們?cè)O(shè)計(jì)了響應(yīng)的數(shù)據(jù)結(jié)構(gòu)。本文繼續(xù)介紹如何設(shè)計(jì)參數(shù)的數(shù)據(jù)結(jié)構(gòu)。

在添加、更新一個(gè)自行車資源時(shí),需要將自行車的信息作為參數(shù)傳遞給 API 的操作。那么,這個(gè)參數(shù)需要包含哪些信息呢?

我們先回顧一下自行車的屬性信息,再根據(jù)具體的操作進(jìn)行分析。

自行車的屬性:

  1. 編號(hào):reference
  2. 名稱:name
  3. 價(jià)格:price
  4. 重量:weight
  5. 上架日期:dateAdded
  6. 描述:description

添加自行車

在添加一個(gè)新的自行車資源時(shí),自行車的編號(hào)屬性,是由后端服務(wù)根據(jù)業(yè)務(wù)規(guī)則生成的,不需要管理員提供。再來看看上架日期。上架日期應(yīng)該等同于管理員添加自行車時(shí)的日期和時(shí)間,也不需要管理員手動(dòng)添加,由后端服務(wù)自動(dòng)添加即可。因此,在添加自行車資源時(shí),需要下列屬性作為參數(shù)信息:

  1. 名稱:name
  2. 價(jià)格:price
  3. 重量:weight
  4. 描述:description

更新自行車

在更新一個(gè)自行車資源時(shí),自行車的編號(hào)是需要提供的,API 服務(wù)使用他來匹配要更新的自行車。自行車的編號(hào)是全局唯一的,自行車與其編號(hào)一一對(duì)應(yīng),不會(huì)重復(fù)。因此,自行車的編號(hào)可以作為路徑參數(shù)。當(dāng)然,上架日期也不需要在更新操作中進(jìn)行修改。如果有必要,可以增加更新日期屬性,記錄最近一次更新時(shí)間。因此,在更新自行車資源時(shí),需要下列屬性作為參數(shù)信息:

  1. 編號(hào):reference
  2. 名稱:name
  3. 價(jià)格:price
  4. 重量:weight
  5. 描述:description

小結(jié)

參數(shù)數(shù)據(jù)的設(shè)計(jì)與響應(yīng)數(shù)據(jù)的設(shè)計(jì)相似,在不同的場(chǎng)景中,使用不同的信息表示業(yè)務(wù)實(shí)體資源。需要注意的是,參數(shù)只提供必需的數(shù)據(jù),特別是不要提供由后端服務(wù)產(chǎn)生的數(shù)據(jù)。下面三個(gè)問題依然對(duì)參數(shù)數(shù)據(jù)的設(shè)計(jì)有幫助:

  1. 所有屬性都與客戶業(yè)務(wù)相關(guān)嗎?
  2. 所有屬性都是客戶需要的嗎?
  3. 客戶理解所有屬性的含義嗎?
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容