我正在開發(fā)一款用于培訓(xùn)目的的網(wǎng)絡(luò)游戲。在這個(gè)項(xiàng)目中,我使用 Spring-Boot 和 REST 端點(diǎn)來(lái)執(zhí)行 CRUD 操作并觸發(fā)業(yè)務(wù)邏輯方法。我的一個(gè)端點(diǎn)如下所示:@PatchMapping("companies/{companyId}/upgrade-star-value") @ResponseBody public String upgradeStarValue(@PathVariable int companyId, @RequestHeader(name = "playerId") int playerId) throws GameLogicException { return companyBusinessLogicService.upgradeStarValue(playerId, companyId); }該端點(diǎn)的目的是觸發(fā)一個(gè)方法,該方法通過傳遞來(lái)驗(yàn)證玩家的特定資源數(shù)量playerId,然后減少它們并通過傳遞來(lái)提升公司的星級(jí)值companyId。所以一切都是在沒有請(qǐng)求主體的情況下完成的。我想知道應(yīng)該使用哪種 REST 方法來(lái)實(shí)現(xiàn)這一目標(biāo)。對(duì)于沒有發(fā)送請(qǐng)求正文但發(fā)送路徑變量和請(qǐng)求標(biāo)頭的情況,我應(yīng)該使用POST還是有其他方法?PATCH是否有處理這種情況的最佳實(shí)踐?我嘗試查找其他帖子,但我很難在谷歌搜索中簡(jiǎn)要表達(dá)我的問題,因此結(jié)果不適用于我的問題。因此,我很高興收到其他帖子的提示。
2 回答

三國(guó)紛爭(zhēng)
TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超7個(gè)贊
您已經(jīng)提到您的操作不是冪等的。在這種情況下,POST 將滿足您的需求,并且或多或少是 RESTful 的。
添加回答
舉報(bào)
0/150
提交
取消