REST API问题

时间:2017-08-16 19:32:01

标签: rest

我正在使用RESTful API创建服务,该服务将负责提供Oracle事务日志。该服务将提供GET和DELETE API以在给定时间范围内获取/删除事务日志。

为了创建API,我有两个选择:

::

GET: /table/{tableName}/logs?startTime=<>&endTime=<>

类似于删除用例。

你会选择哪一个?为什么?

3 个答案:

答案 0 :(得分:1)

公平地说,REST对于解释是完全开放的,因为正确的是#34;但我可能会选择第一个选项。我认为URL应该按照逻辑顺序设计。首先,您正在查看表格,然后查看特定的表格,然后查看该表格的日志。这更符合逻辑。其次,当您在URL的末尾执行查询时,查询实际上是在日志上,因此尽可能使查询尽可能接近单词日志是最合乎逻辑的。

答案 1 :(得分:1)

REST没有说明网址的正确结构。事实上,它表明应该发现网址并与客户无关。创建逻辑URL结构被认为是最佳实践,但这仅适用于人类而非REST客户端。

哪个更好是完全主观的,但在基于REST的设计方面要么是正确的。

答案 2 :(得分:0)

正确的REST设计原则让我感到疲惫。关于这些,有很多非常情绪化的争论。所以我不知道基于REST的设计是什么,但我知道我会选择什么:

如果除了表之外还有其他与日志相关的资源,我会选择/logs/table/...。如果没有,我会选择/table

顺便说一句,为什么table而不是log?资源是一个交易日志,不是吗?