2017-08-14 73 views
0

我在这里读一REST Web服务教程:格式化设置对象关系的REST URL的正确方法是什么?

www.drdobbs.com/web-development/restful-web-services-a-tutorial/240169069?pgno=3

它的例子是“俱乐部”有“人” S作为成员。

用于读取和更新一个人建议的URL格式为:

http://MyService/Persons/{PersonID} 

读取和更新俱乐部建议的URL格式为:

http://MyService/Clubs/{ClubID} 

我的问题是,什么是适当的REST风格的网址格式,用于将某人变为俱乐部成员或从俱乐部中删除某个人?

例如,我想象这样的事情...

http://MyService/AddMemberToClub?clubid=1&personid=2 

...但是,这似乎并不符合RESTful的标准格式。

回答

2

这些是俱乐部本身而不是人的责任。这意味着这个人应该与你试图更新的资源无关,这是一个俱乐部,而不是个人,因为这个人不应该通过将其添加到一个俱乐部来改变它的本质(尽管他可能有一个外国人俱乐部的关键)。

因此,最好的办法是

/myService/clubs/{ClubId}/person/{PersonId} 

同样的网址与删除方法应该从俱乐部,并与put方法删除此人应在新的人加入到俱乐部。

相关问题