Я использую MicroMQ для связи между различными сервисами, и для основного сервиса все нормально, я получил запросы и затем делегировал их через RabbitMQ. Я вижу это сообщение в очереди, но мой микросервис не получает никаких сообщений. Это для основного сервиса:
контроллер:
export const create = async (req, res) => {
await res.delegate('trade');
}
gatewayConfig:
const Gateway = require('micromq/gateway');
const config = require('../configServer');
export const gateway = new Gateway({
microservices: ['platform', 'trade'],
name: 'platform',
rabbit: {
url: "amqp://rihtavqi:AhKDUujmeC5hBUPb0zQb7qh7AgqnR5QG@lion.rmq.cloudamqp.com/rihtavqi"
}
});
export const services = {
trade: 'trade'
};
сервер. js
app.use(gateway.gateway.middleware());
это что Я использую в своем основном сервисе. Это единственное место, где я вызываю шлюз ...
И это для микросервиса: сервер. js
const express = require("express");
const gateway = require('./gateway/gatewayRoute');
const app = express();
const server = require("http").createServer(app);
gateway.start().then(() => {
server.listen(constant.config.port, constant.config.host, async () => {
loggingHelper.consoleLog("APP", `Server running on port ${constant.config.port} and on host ${constant.config.host}.....`);
process.on("unhandledRejection", (reason, promise) => {
loggingHelper.consoleLog("APP_ERROR", `Uncaught error in ${String(reason)}`, promise);
});
});
route
const MicroService = require('micromq/src/MicroService');
const loggingHelper = require('../app/helper/loggingHelper');
const orderService = require('../app/service/orderService');
const gateway = new MicroService({
name: 'trade',
rabbit: {
url: "amqp://rihtavqi:AhKDUujmeC5hBUPb0zQb7qh7AgqnR5QG@lion.rmq.cloudamqp.com/rihtavqi"
}
}
);
gateway.post('/create', async (req, res) => {
loggingHelper.consoleInfoLog("TRADE", "/create received.");
res.json(await service.create(req));
});
module.exports = gateway;
Последний один не работает. Кстати, моя идея подсказала мне, что функция .post () - это
Неразрешенная функция или метод post ()
Я думаю, что проблема здесь. Я пробовал разные способы (создание шлюза (micromq / gateway) в микросервисе, пытался деструктурировать MicroService, но все это ничего не дает мне) все это создавалось на примерах, но это не работает ... И я не могу понять, почему? Кто-нибудь знает почему?