【问题标题】:Storing user-created logic in MongoDB在 MongoDB 中存储用户创建的逻辑
【发布时间】:2016-08-22 14:10:17
【问题描述】:

我有一个节点应用程序 (express.js),我想创建一个 Web 界面,用户可以在其中实现一些关于何时触发事件的逻辑。所有这些都必须存储在数据库(MongoDB)上。 (也欢迎其他想法)

我希望用户实现完整的 if/while 语句。 就好像您有一列包含变量(特定模型的各种文档的 mongo 字段),并且您可以根据需要测试其中的任何一个(例如,添加它们,子它们,将它们与值或另一个变量进行比较)。 此外,您还有另一列包含事件(实际上是 js 函数),当 if/while 语句为真时将触发这些事件,例如发送带有变量值的电子邮件或发送带有警告消息的推文。

我知道在文档中保存函数不是一个好主意。 Mongo 旨在存储文档,而不是代码。这是真的吗?

我该如何设计?

代码不是我想要的,但它总是受欢迎的。也很抱歉,但我不是书迷,我不想要书/pdf 推荐。

【问题讨论】:

    标签: javascript mongodb database-design


    【解决方案1】:

    似乎最好的选择是将用户输入的javascript代码(通过文本编辑器或通过拖动块创建)存储在文档中,并在单独的node sandbox中执行。

    我有点担心 vm 的安全性,但是 node 用于生产环境,所以这可能只是我的想法......

    【讨论】:

      猜你喜欢
      • 2021-10-31
      • 2021-04-13
      • 1970-01-01
      • 2020-05-01
      • 2010-10-02
      • 2015-12-15
      • 2016-04-18
      • 1970-01-01
      • 2011-07-24
      相关资源
      最近更新 更多