W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
Hasor Web 框架除了前面提到的 傳統(tǒng) MVC 開發(fā)方式,它還支持 RESTful 形式的請求。 restful 已經(jīng)被廣泛的應(yīng)用在 http 協(xié)議下的微服務(wù)實現(xiàn)手段。
Hasor Web 框架的 Api 已經(jīng)混合了 RESTful 和 傳統(tǒng)的 MVC 聲明。因此使用 Hasor 開發(fā) RESTful 您不必理解和記憶更多的 API 接口。下面我們以 User 操作為例,介紹一下 Hasor 的 RESTful Api 的用法。
首先:查詢 User。我們在 MappingTo 中通過表達(dá)式 ${userID}
聲明一個路徑參數(shù) userID
。然后我們在 execute 方法中 userID 參數(shù)上映射這個路徑參數(shù)。
@MappingTo("/user/info/${userID}")
public class HelloAcrion extends WebController {
public void execute(RenderInvoker invoker, @PathParam("userID") long userID) {
...
}
}
下面我們加入 User 的修改功能,為了區(qū)分 User 查詢,我們使用 Post、Get 加以區(qū)分。
@MappingTo("/user/info/${userID}")
public class HelloAcrion extends WebController {
@Post
public void updateUser(RenderInvoker invoker, @PathParam("userID") long userID) {
...
}
@Get
public void queryByID(RenderInvoker invoker, @PathParam("userID") long userID) {
...
}
}
或者我們可以通過兩個 RESTful 參數(shù)來簡化一下思路。
@MappingTo("/user/info/${userID}/${action}")
public class HelloAcrion extends WebController {
public void execute(RenderInvoker invoker,
@PathParam("userID") long userID, @PathParam("action") String action) {
if ("update".equals(action)){
...
} else if ("delete".equals(action)){
...
} else {
...
}
}
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: