const http = require('http');
const server = http.createServer((req, res) => {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello, World!');
});
server.listen(3000, 'localhost', () => {
console.log('Server is running at http://localhost:3000');
});如何使用Node.js创建简单的HTTP服务器
const http = require('http');
const server = http.createServer((req, res) => {
console.log('Received request for ' + req.url);
res.writeHead(200, {'Content-Type': 'text/plain'});
res.write('Hello, World!');
res.end();
});
server.listen(3000, () => {
console.log('Server is running on port 3000');
});使用Node.js和Express.js创建 RESTful API
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.json());
app.get('/api/users', (req, res) => {
// 从数据库获取所有用户
const users = [
{ id: 1, name: 'John Doe' },
{ id: 2, name: 'Jane Smith' },
{ id: 3, name: 'Bob Johnson' }
];
res.json(users);
});
app.post('/api/users', (req, res) => {
// 创建新用户
const newUser = req.body;
res.status(201).json(newUser);
});
app.listen(3000, () => {
console.log('Server is running on port 3000');
});如何使用Node.js处理文件上传
const fs = require('fs');
const http = require('http');
const server = http.createServer((req, res) => {
if (req.method === 'POST') {
const fileStream = fs.createWriteStream('uploaded_file.txt');
req.pipe(fileStream);
req.on('end', () => {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('File uploaded successfully!');
});
}
});
server.listen(3000, () => {
console.log('Server is running on port 3000');
});使用Node.js和WebSocket创建实时聊天应用
const http = require('http');
const WebSocket = require('ws');
const server = http.createServer();
const wss = new WebSocket.Server({ server });
wss.on('connection', (ws) => {
ws.on('message', (message) => {
// 处理收到的消息
wss.clients.forEach((client) => {
if (client !== ws && client.readyState === WebSocket.OPEN) {
// 发送消息给其他客户端
client.send(message);
}
});
});
ws.on('close', () => {
// 处理客户端断开连接
});
});
server.listen(3000, () => {
console.log('WebSocket server is running on port 3000');
});