Создайте оболочку API REST для TCP-сервера Node.js - PullRequest
0 голосов
/ 26 февраля 2019

Мне удалось создать TCP-сервер, используя node.js, который выглядит примерно так.

const net = require('net');
const port = 7070;
const host = '127.0.0.1';

const server = net.createServer();
  server.listen(port, host, () => {
  console.log('TCP Server is running on port ' + port + '.');
});

Я хочу создать обертку для API http rest.Так что я могу отправлять сообщения с моего TCP-сервера на мой TCP-клиент.Например, если я создаю URL http://example.com/api/send-message, и когда я нажимаю на этот URL, мой TCP-сервер отправит сообщение.

Я просто так запутался, как мне вообще это сделать.делать это, так как TCP-сервер и REST API-сервер находятся на разных портах.Пожалуйста, кто-нибудь может помочь

1 Ответ

0 голосов
/ 27 февраля 2019

Мне удалось решить эту проблему, создав приложение node.js, которое действует как tcp-клиент, который общается с моим tcp-сервером node.js.В клиенте я интегрировал экспресс.Express создает API, а затем на каждой конечной точке я создал TCP-соединение, которое связывается с моим TCP-сервером, а затем ответ отправляется обратно на мой http API

const express = require('express')
const app = express()
const port = 3000;
const net = require('net');
const client = new net.Socket();


var tcpPort = 7070;
var tcpIP = '127.0.0.1';

app.get('/',function(req, res){

 client.connect(tcpPort, tcpIP);
 client.write('Hello world');
 client.on('data', function(data) {
    client.destroy();
    res.send({hello:data.toString()});
 });

});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...