提交的接口
url 的格式
【method】/api/:moduleId/:actionId/:dataId
method
這個沒啥要求亥宿,不需要 body 就用 get道逗,需要 body 就用 post。
可以支持其他的瞎暑,只是沒啥作用彤敛。moduleId
模塊ID,原來想直接用serviceId的了赌,但是發(fā)現(xiàn)這樣做的話數(shù)量太多臊泌,容易懵逼,所以還是用一個模塊來做一個分組揍拆,這樣API接口的數(shù)量,看起來就不會太多茶凳。actionId
動作ID嫂拴,類似于 RESTful 里面的get、post贮喧、put筒狠、delete等,
也類似于ASP.net MVC 里面的action箱沦。
沒有使用 RESTful 的方式辩恼,是因為總感覺靈活度不夠。這里使用ID(也可以是其他標志)可以更靈活一些,擺脫一些束縛灶伊。dataId
記錄的主鍵的值疆前,用于獲取(get)記錄聘萨,刪除記錄竹椒,修改記錄等。
可以作為一個資源的唯一標志米辐。
舉例
【post】/api/100/10 // 添加
【post】/api/100/20/1 // 修改
【get】/api/100/30/1 // 刪除
【get】/api/100/40/1 // 獲取記錄(model)
【post】/api/100/50/1 // 分頁+查詢胸完,獲取記錄集
【post/get】/api/100/60/1 // 獲取記錄,可以查詢
如果感覺“魔數(shù)”不好看的話翘贮,可以改成單詞:
【post】/api/user/10-add // 添加
【post】/api/user/20-update/1 // 修改
【get】/api/user/30-delete/1 // 刪除
【get】/api/user/40-get/1 // 獲取記錄(model)
【post】/api/user/50-pager // 分頁+查詢赊窥,獲取記錄集
【post/get】/api/user/60-all // 獲取記錄,可以查詢
actionId狸页,也采用數(shù)字锨能,是因為懶得起名字了,起名困難癥呀肴捉。
body的格式
這個根據(jù)申請的類型有所區(qū)別腹侣。其中獲取、刪除只有g(shù)et齿穗,沒有post方式傲隶,也就是沒有body的格式。
添加窃页、修改
按照需求設(shè)置字段名和字段值
{
name:"這是名稱",
age:"18"
}
分頁和查詢
{
pager: {
pagerIndex:2,
pagerSize:20
},
query: {
name: [401, "jyk"]
},
useCount: false
}
pager
提交兩個參數(shù)跺株,一個是第幾頁的數(shù)據(jù),一個是一頁多少條記錄脖卖。query
提交查詢條件useCount
是否需要統(tǒng)計總記錄數(shù)乒省。這個是出于性能的考慮。
接收的格式
還沒想好具體的格式畦木,先弄個code吧袖扛,似乎大家都是這么弄的。
這個code僅僅表示業(yè)務(wù)邏輯十籍,和其他無關(guān)蛆封。
其他的嘛,model表示一條記錄勾栗,list表示列表惨篱,pager表示分頁信息。
其他待定围俘,也許應(yīng)該加一個msg砸讳,出錯的時候放描述錯誤信息琢融。
添加
返回新記錄的ID值
修改和刪除
返回影響的行數(shù),如果為 1 簿寂,說明改了一條(或者刪除一條)漾抬,如果為 0 說明沒找到記錄。
獲取
返回model
查詢
返回記錄集合
分頁
返回記錄集合以及分頁信息