UNPKG

aux-broker-mq

Version:

Микросервис тест взаимодействия

61 lines (57 loc) 1.64 kB
const express = require("express"); const app = express(); const { BrokerProxy } = require("../dist/BrokerProxy"); const broker = new BrokerProxy({ host: "auxilium:Saq33rrT@localhost" }); const fs = require("fs"); app.set("port", 3000); app.use((req, res, next) => { res.header("Access-Control-Allow-Origin", "*"); res.header( "Access-Control-Allow-Methods", "GET, POST, PATCH, PUT, DELETE, OPTIONS" ); res.header( "Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, access" ); next(); }); app.get("/v1/health", (req, res) => { res.send("0"); broker.emit("testService.health", { service: "test", value: "success", date: Date.now(), }); }); app.get("/", (req, res) => { res.send("REST API Сервер, Текущая версия V1.0.0"); }); app.listen(app.get("port"), async () => { try { await broker.connect(); await broker.createChannel("testService.health"); await broker.createExchange("article", "fanout"); setInterval((_) => { broker.publish("article", '', { title: "hello", date: Date.now(), description: "Nothing interesting" }) }, 1000); setInterval((_) => { broker.publish("reviews", 'fake.cinema.cols', { title: "the best review", date: Date.now(), }) }, 900); setInterval((_) => { broker.emit("testService.health",{check: 1, date: Date.now()}); }, 5000); console.log( "[*] Доступно подключение по адресу: 127.0.0.1:" + app.get("port") ); } catch (ex) { console.log(ex); } });