Node.js 是一個基于 Chrome V8 引擎的 JavaScript 運行時環境,它允許在服務器端運行 JavaScript 代碼。在 Linux 上,Node.js 可以用于創建各種網絡應用程序,如 Web 服務器、API 服務器、實時通信服務器等。以下是使用 Node.js 在 Linux 上進行網絡通信的一些建議:
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/');
});
首先,需要安裝 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}`);
});
首先,需要安裝 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}`);
});
// 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 進行基本的網絡通信。根據實際需求,可以選擇合適的庫和框架來構建更復雜的應用程序。