问题标签 [moleculer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
142 浏览

moleculer - Moleculer DBService 中的严格集合/表名设置

我正在设计Moleculer JS微服务,它扩展了Moleculer DB并且可以扩展 SQL(例如Sequelize)和 noSQL(例如MongoDB)适配器。

这是一个book服务模式

虽然模型名称book在分子服务启动books表/集合上,但将创建(不管是 SQL 还是 noSQL 之一)。那没问题。

但如果我想创建另一个服务来保留已删除的项目,比如说books_archivebook_archive-books_archivesbook_archives(分别)将被创建。

Sequelize文档包含

配置属性,我试图将其放入settings模式块和model块内部,以及适配器构造属性内部(见下文),但没有运气 - 创建的集合(表)仍然只包含一个额外的s字符。有什么解决办法吗?

0 投票
0 回答
172 浏览

node.js - 无法连接/调用其他节点的服务 Moleculer NodeJs

我已经为分子创建了 2 个节点

我在项目一中添加了一个服务 users.list,它列出了所有工作正常的用户列表,我也公开了它的 api。但问题是,当我运行另一个节点 project2 时,在服务操作中我调用 user.list 它显示 SERVICE_NOT_FOUNT。但是它调用的是自己的函数,而不是其他节点的函数

我想连接不同的节点,以便我可以在另一个节点中调用一个节点的服务,我不知道我错过了什么或做错了什么,因为我遵循了分子的文档,它说它应该像那样工作,但它不工作

我正在使用 REDIS 作为传输器。这是操作代码

0 投票
1 回答
363 浏览

moleculer - 了解中间件在 Moleculer 中的工作原理

我理解 Mix-ins 是跨服务扩展通用功能。但我无法理解中间件在分子中的工作原理以及它可以帮助我解决什么问题。

0 投票
1 回答
961 浏览

node.js - (hapi + molecular)NodeJS中的服务到服务身份验证

我在 Hapi+Molecular 中开发了不同的微服务。我使用hapi-moleculer npm 模块在 hapi 中添加分子,我使用 redis 作为传输服务之间的通信。我可以从服务 B 调用服务 A 的功能......我需要添加身份验证来调用其他服务的功能。就像服务 B 的服务 A 调用函数一样,它需要进行身份验证以防止其他人连接到我的服务。我正在调用这样的服务

我看到了一个模块imicros-auth,但我发现它没有多大用处,是否有任何其他模块可以做到这一点,或者是否有更好的方法来自定义代码以进行服务到服务身份验证。它应该像

如果服务正在调用自己的函数,则不需要身份验证,如果调用其他服务的函数,则必须对其进行身份验证另一件事不应该像从数据库中获取身份验证或某种使服务响应缓慢的事情一样,可以是基于令牌或类似的东西

0 投票
1 回答
380 浏览

node.js - 分子 js 不能在使用 Nodejs 的本地服务器上工作

我正在使用 Node.js。当我尝试为 Node.js 安装 Moleculer 框架时,出现此错误:

这是我正在运行的命令:

我究竟做错了什么?

0 投票
1 回答
77 浏览

javascript - Moleculer-Cli 启发项目:如何使用 EJS 代替 Handlebars

我正在尝试创建一些脚手架工具来轻松地以我想要的方式启动项目。我喜欢来自分子的人在他们的https://github.com/moleculerjs/moleculer-cli中的做法

他们使用 Handlebars,所以现在我可以在我的模板中执行此操作(例如 package.json 的模板):

效果很好,但我更喜欢使用 ejs。不幸的是,我不知道如何成功更改 init.js 文件,因此 Metalsmith 可以咀嚼这样的东西:

0 投票
1 回答
877 浏览

node.js - 当我们为微服务使用分子框架时,如何实现 swagger

当我们使用 Moleculer 框架实现微服务时,我无法找到如何实现 swagger,因为我正在使用 Api-gateway 解析和映射请求并使用 NATS 传输器发送到特定节点或服务。

0 投票
1 回答
90 浏览

moleculer - 分子:分割微服务通信

我刚开始玩 Moleculer 并看到从另一个服务调用服务操作/事件是多么容易。这很棒。但是,有没有办法限制哪些服务可以访问特定服务?因此,例如,如果我的应用程序中有产品和订单,我可能不希望订单访问所有与产品相关的服务,而只是主要的服务。我只是在想,如果我让所有人免费使用它,可维护性可能会受到影响,因为我不会轻易知道哪个服务正在调用哪个服务。或者我应该只创建两个项目(一个用于订单,一个用于产品)并在那里控制它?

0 投票
1 回答
691 浏览

node.js - 如何使用分子.js 从 bodyParser 访问 post 参数

我正在研究molerr.js,我发现唯一难以理解的事情;如何在下面给出的服务操作中获取参数是我的代码

下面是我想要获取发布参数的用户服务

我想要的是

代替

0 投票
1 回答
428 浏览

javascript - 如何在 Moleculer 中获取请求正文

根据 API 文档,要从 POST 请求接收 json 作为 formData,必须使用 body-parser。我已经在网关服务中声明了它,但我仍然无法在我的操作中收到 formData。

api.service.js

在操作 service.insertUser 操作中,我应该将 req.body 作为 ctx.params 接收,但它始终为空

我的 users.service.js