Node.js 与前端可通过 HTTP 请求/响应、WebSocket 以及 Socket.IO 进行交互:建立 Node.js 服务器并定义路由。前端发送 HTTP 请求或使用 WebSocket 或 Socket.IO 建立连接。Node.js 服务器处理请求并返回响应或通过实时连接发送数据。

Node.js 与前端的交互
Node.js 是一种用于构建服务器端应用程序的 JavaScript 运行时环境。它可以与前端技术(如 HTML、CSS 和 JavaScript)交互,以提供动态和交互式的 Web 应用程序。
交互方法
Node.js 和前端的交互可以通过以下方式进行:
- HTTP 请求/响应:Node.js 服务器可以处理来自浏览器或其他客户端的 HTTP 请求,并返回 HTML、JSON 或其他类型的响应。
- WebSocket:WebSocket 是一种双向实时通信协议,允许 Node.js 服务器与前端建立持久连接,以便实时传输数据。
- Socket.IO:Socket.IO 是一个 WebSocket 库,简化了 Node.js 和前端之间的实时通信。它还提供了事件处理和消息命名空间等高级特性。
实现步骤
1. 建立服务器:
内容:生产级 Node.js 后端模式,涵盖 Express/Fastify 配置、分层架构、中间件、错误处理、验证、数据库集成、身份验证及缓存。 时机:构建 REST API、搭建 Node.js 服务器、实施身份验证、集成数据库、添加验证/缓存或构建后端应用结构时。 关键词:nodejs, node, express, fastify, typescript, api, rest, 中间件, 身份验证, jwt, 验证, zod, postgres, mongodb, redis, 缓存, 速率限
const express = require('express');
const app = express();
const server = app.listen(3000);
2. 定义路由:
app.get('/', (req, res) => {
res.send('Hello from Node.js!');
});
3. 处理前端请求:
app.post('/submit-form', (req, res) => {
const data = req.body;
// 处理表单数据...
});
4. 使用 WebSocket:
const WebSocket = require('ws');
const wss = new WebSocket.Server({ server });
wss.on('connection', (ws) => {
// 与客户端建立 WebSocket 连接...
});
5. 使用 Socket.IO:
const socketIO = require('socket.io');
const io = socketIO(server);
io.on('connection', (socket) => {
// 与客户端建立 Socket.IO 连接...
});
前端代码示例:
// 发送 HTTP 请求
fetch('/submit-form', {
method: 'POST',
body: JSON.stringify({ name: 'John' }),
})
.then((res) => res.json())
.then((data) => console.log(data));
// 建立 WebSocket 连接
const socket = new WebSocket('ws://localhost:3000');
socket.onopen = () => console.log('Connected to WebSocket');
// 使用 Socket.IO
const socket = io();
socket.on('connect', () => console.log('Connected to Socket.IO'));
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










