将计算建模为Web资源(REST资源)是否可以?

时间:2013-11-22 16:48:33

标签: http rest

假设我有一个组件,它作为业务操作执行添加。 我不需要将总和的结果保存在任何地方,因为,比方说,唯一重要的是添加的结果。

假设客户端组件应该对保存添加的结果感兴趣,所以我需要指示客户端如何保存添加的结果,以便他可以稍后返回并检索此结果。< / p>

是否可以将添加服务建模为Web资源?类似的东西:

GET api.mycompany.com/addition?param1=x&param2=y

应该返回业务操作的结果。响应可能会将以下内容显示为链接(此处为超媒体)以保留结果:

POST api.mycompany.com/addition?param1=x&param2=y

这种做法是否正确? - 在一个真正宁静的api的意义上 -

2 个答案:

答案 0 :(得分:0)

考虑到CRUD操作,这个:

GET api.mycompany.com/addition?param1=x&param2=y

是幂等的,安全的和可缓存的,所以我将它视为RESTful GET。 一旦您的参数变得更加复杂,您就可以将它们发布到“添加”资源,并将URL返回到计算结果。

答案 1 :(得分:0)

是的,没关系。但也许最好有一个名为operation的资源,它返回支持操作的链接列表。然后你可以拥有operation/addition?param1=x&param2=y等等。当然,链接应该是不透明的,并且通过调用operation资源返回的文档化媒体类型应提供有关其他可用资源的信息。