0

我正在开发一个帐户有角色的游戏网站。我正在使用以下路线:

account/{action} //execute `action` on the current account
character/{name}/{action} //execute `action` on specific character

但是我需要deleteundelete(它们是软删除的)字符,虽然使用表单是正确的方式delete,但当我可以只使用 GET 链接时,它变得不必要(是吗?)膨胀character/{name}/delete。此外,没有用于取消删除/恢复的动词。

解决此问题的正确且简单的方法是什么(如果没有完美的方法,则两者兼而有之)?

4

2 回答 2

1

如果你的 URL 有名词而不是动词,你可以有一个 RESTful 版本,例如:

character/{name}/achievements or

character/{name}/travels

要解决您的活动/非活动帐户问题,您可以执行以下操作:

GET/PUT account/activity
于 2014-03-07T11:46:26.800 回答
0

已经不平静,您根据路线而不是动词来确定动作。也就是说,创建一个取消删除的新路线(即字符/{name}/undelete),您已经不是 REST,所以另一条路线应该无关紧要。如果您正在寻找 RESTful,那么路由应该保留 account/{character} 并且动词确定操作(即 GET、PUT、POST DELETE 到同一路由)。现在,由于您实际上并没有删除,我将学习 POST(或 PUT),即更新实体以删除(或非活动),或将其更新为取消删除(再次活动)

于 2014-03-06T23:57:40.063 回答