在Node.js REST服务中嵌入条件业务逻辑的正确方法是什么?

问题描述 投票:0回答:1

我是构建Node.js / MongoDB应用程序的新手。我理解为简单的CRUD操作设置MongoDB集合的基础知识。

但是,我仍然想弄清楚以下情况 -

让我们假设我们有一个名为 - Customer (CustomerId, CustomerName, CustomerLocation, CustomerRating)的集合

现在使用Node.js层中的基本REST服务设置,如果我想更新客户集合 - 那么我们将进行以下设置:

customerRouter.route('/api/customer').put() - >将更新集合中的所有客户记录。

但是,如果有另一种情况我必须有条件地更新集合中CustomerLocation = 'US'CustomerRating > 100的所有客户记录,那么我如何设置这样的业务条件从Node.js传递到MongoDB以包括执行更新之前的条件?

我在这里没有理解的是要更新的资源保持不变,要更新的记录数可以是“全部”或“条件更新”。

如何从Node.js层传递这些条件?

此处还需要注意的是,条件更新并不总是硬编码的静态条件。条件参数应动态框架。

  • 项目清单

(例如:1:参数A为“A”(或)参数B小于<50)(例如2:“A,B,C”中的参数A(和)参数C大于200)

我希望动态构建条件并将它们从Node.js传递给MongoDB。

谢谢。

node.js mongodb mongoose
1个回答
0
投票

我认为这将属于过滤,排序,字段选择和分页的类别。在这种情况下,您不会更改路径,但会在路径末尾添加查询字符串。

获取居住在美国{host}/api/customer?location=us的所有客户

获取居住在美国的所有客户,并且客户评级超过100 {host}/api/customer?location=us&rating>100

现在,在Node.js路由处理程序中,您将添加逻辑来处理查询字符串。

希望这可以帮助。

© www.soinside.com 2019 - 2024. All rights reserved.