温馨提示×

Node.js在Linux上的网络通信

小樊
52
2025-09-25 05:30:48
栏目: 编程语言

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,它允许在服务器端运行 JavaScript 代码。在 Linux 上,Node.js 可以用于创建各种网络应用程序,如 Web 服务器、API 服务器、实时通信服务器等。以下是使用 Node.js 在 Linux 上进行网络通信的一些建议:

  1. 使用内置的 HTTP 模块创建 Web 服务器:
const http = require('http');

const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello World\n');
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});
  1. 使用 Express.js 框架创建 Web 服务器:

首先,需要安装 Express.js:

npm install express

然后,创建一个简单的 Web 服务器:

const express = require('express');
const app = express();
const port = 3000;

app.get('/', (req, res) => {
  res.send('Hello World!');
});

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`);
});
  1. 使用 WebSocket 实现实时通信:

首先,需要安装 WebSocket 库:

npm install ws

然后,创建一个简单的 WebSocket 服务器和客户端:

// server.js
const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 3000 });

wss.on('connection', (ws) => {
  ws.on('message', (message) => {
    console.log(`Received message: ${message}`);
    ws.send(`You sent: ${message}`);
  });
});
// client.js
const WebSocket = require('ws');
const ws = new WebSocket('ws://localhost:3000');

ws.on('open', () => {
  ws.send('Hello Server!');
});

ws.on('message', (message) => {
  console.log(`Received message: ${message}`);
});
  1. 使用 net 模块创建 TCP 服务器和客户端:
// server.js
const net = require('net');
const server = net.createServer((socket) => {
  socket.write('Hello from server!\n');

  socket.on('data', (data) => {
    console.log(`Received message: ${data}`);
    socket.write(`You sent: ${data}`);
  });
});

server.listen(3000, () => {
  console.log('Server listening on port 3000');
});
// client.js
const net = require('net');
const client = net.createConnection({ port: 3000 }, () => {
  console.log('Connected to server');
  client.write('Hello from client!');
});

client.on('data', (data) => {
  console.log(`Received message: ${data}`);
});

这些示例展示了如何在 Linux 上使用 Node.js 进行基本的网络通信。根据实际需求,可以选择合适的库和框架来构建更复杂的应用程序。

0