1

我是 REST 新手,我知道资源的概念是 RESTful 服务的核心。假设我创建了一个 RESTful 服务,它允许用户在我的 hashmap 中创建/读取/更新/删除一些对象(一个对象说 CustomerOrder,它有诸如 orderId 和他们订购的菜肴列表)。

这很容易转换为 REST,我有 GET 来读取订单,DELETE 来删除一个订单,POST 来创建一个新订单,PUT 来更新。

但是,假设我的应用程序有一些称为 processCustomerOrder(int orderId) 的方法,它从地图中检索订单并将订单发送到另一个处理订单的 web 服务。我希望我的前端网站有一个按钮“处理订单”,它将调用该方法,而我的服务器将只返回一个字符串,如“订单处理成功”。

我是否正确地说这应该只是另一种具有不同路径的 GET 方法?例如:

path=restservice/processRequest 
httpmethod=GET 
param=orderId

或者这是否违反了 RESTful 设计的规则,因为我实际上没有获得任何资源?

4

1 回答 1

1

你当然可以这样做。在这种情况下,资源就是方法(方法也是资源,因为你可以做一些处理,返回一个消息或其他实体,所以不管它是什么类型的处理)。

String是一个有效的响应实体(JAX-RS 响应实体类型)。

您可能对子资源方法定位器感兴趣:http: //docs.oracle.com/javaee/6/tutorial/doc/gknav.html#gklag

于 2013-08-26T18:44:03.690 回答