UNPKG

@dfeidao/send-msg

Version:

消息总线

57 lines (56 loc) 2.15 kB
var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; (function (factory) { if (typeof module === "object" && typeof module.exports === "object") { var v = factory(require, exports); if (v !== undefined) module.exports = v; } else if (typeof define === "function" && define.amd) { define(["require", "exports", "log4js", "./config", "./invoke"], factory); } })(function (require, exports) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const log4js_1 = require("log4js"); const config_1 = __importDefault(require("./config")); const invoke_1 = __importDefault(require("./invoke")); const logger = (0, log4js_1.getLogger)(); async function send_msg(headers, msg) { const m = msg; const { timestamp } = headers; const tm = Number(timestamp); if (tm > 0 && new Date().getTime() - tm > config_1.default.timeout) { return Promise.reject('Timeout.'); } if (!Buffer.isBuffer(m) && !m.spaceid) { m.spaceid = config_1.default.spaceid; } const data = await (0, invoke_1.default)(config_1.default.cwd, headers, m); if (data.buff) { // todo buff 属于兼容性代码,下个版本去掉 logger.debug('res=buffer'); data.data = data.buff; delete data.buff; return data; } else if (Buffer.isBuffer(data.data)) { logger.debug('res=Blob Data.'); // data.data = Buffer.from(JSON.stringify(data.data)); return data; } else if (data.data !== undefined) { logger.debug(`res=${typeof data === 'string' ? data : JSON.stringify(data)}`); return data; } else { const str = JSON.stringify(data); logger.debug(`res=${str}`); return { content_type: 'application/json', data: Buffer.from(str) }; } } exports.default = send_msg; });