如何通过RESTful接口管理池
由于我不确定我最初是否把这个问题说得很好,所以我重复了一遍,看看是否有更好的回答 我对如何最好地使用RESTful API管理特定种类的集合有一个问题。为了帮助说明我的问题,我将使用一个简单的人工示例。让我们称之为“奖券选择器”。对于这个问题,我只对如何执行一个功能感兴趣如何通过RESTful接口管理池,rest,api,methods,restful-architecture,pool,Rest,Api,Methods,Restful Architecture,Pool,由于我不确定我最初是否把这个问题说得很好,所以我重复了一遍,看看是否有更好的回答 我对如何最好地使用RESTful API管理特定种类的集合有一个问题。为了帮助说明我的问题,我将使用一个简单的人工示例。让我们称之为“奖券选择器”。对于这个问题,我只对如何执行一个功能感兴趣 我收集了一些未购买的抽奖券。每个都有一个唯一的抽奖号码以及其他信息 我需要能够从raffleTickets集合中获取确定数量的票(numTickets),而无需唯一选择它们。集合本身具有随机选择机制 结果是,我从集合中返回了5
第一次回复所依据的原始帖子: 我有一个给定项的池,它将使用RESTful API进行管理。现在向池中添加项目不是问题,但如何从池中获取项目?这也是一个帖子还是一个删除? 假设它是一个随机数池,我希望在单个方法调用中检索数量可变的项。 我有两种情况:
谢谢我不知道我是否理解你的问题。这主要取决于您开发REST通信的API端的方式 在一般解决方案中,可以使用DELETE从列表中删除项。但是,如果您只想部分更新项目,可以使用补丁而不是POST或PUT
看看这个:我想我的问题是,我认为删除是在资源级别上的,所以删除poolOfResources/{resourceID},这很好,但我不想这样做。我不在乎我得到什么资源,只要给我N个就行了。如果我确实删除了池(集合),那么我不是在删除集合。此外,如果我对集合执行删除操作,并让它为我提供N个池成员,然后重复该操作,我将不会得到相同的结果,我相信REST要求DELETE是幂等的。@DarylORegan,因此,如果您对poolOfResources执行删除操作,则需要获得N个资源ID(随机),并确保将这些N个资源标记为“已删除”,这样以后就不会再获取它们了。这就是你的意思吗?这在很大程度上取决于你编写get操作的方式。比如说,get poolOfResources将返回N个资源,并将N个资源标记为,比如说,“已删除”,或者将它们标记为“已完成”“或者别的什么。我们在同一页吗?顺便说一句,这是一个有趣的案例/问题。嗨,丹尼尔,为了清楚起见,我用一个具体(我希望)的例子重申了上述问题,并删除了一个可能有助于集中注意力的案例。我想说的是,同时具有幂等性和安全性也是值得怀疑的