REST API删除方法资源建模

时间:2018-04-19 10:42:12

标签: rest restlet

我想用包含可选参数的delete方法设计一个rest API。我认为不推荐使用delete方法的主体。我需要将参数作为路径参数/查询参数传递.Can我在路径参数/查询参数中有可选字段吗?

我的资源如下

DELETE policy / {policy-number} / {entity-type} / endorse-number

实体类型是可选的。

任何有用的帮助。

1 个答案:

答案 0 :(得分:2)

在Roy T. Fielding的论文的chapter 5中定义的REST架构风格没有说明URL必须是什么样的。它定义了一组约束,这些约束必须遵循这种体系结构的应用程序。

另一方面,Martin Fowler编写的这个article示例解释了由Leonard Richardson定义的模型建议一个看似友好的URL结构易于阅读。

您可以使用矩阵参数。假设您要删除给定策略的支持号码 (通过实体类型过滤),您可以使用:

DELETE /policy/{policy-number};entity-type={entity-type}/endorse-number

要删除给定策略的支持号码 ,只需删除实体类型过滤器:

DELETE /policy/{policy-number}/endorse-number