JavaScript 本身不是 RESTful API,而是用于实现或调用 RESTful API 的编程语言;RESTful API 是基于 HTTP、遵循 REST 原则的设计风格,强调资源 URI、标准方法、无状态和统一 JSON 响应。
JavaScript 本身没有叫“RESTful API”的东西——它不是一种 API,而是一种编程语言。真正存在的是用 JavaScript(常配合 Node.js)编写的 RESTful API,或者用 JavaScript 编写的客户端代码来调用 RESTful API。这个说法容易混淆,我们来拆清楚。
RESTful API 是一种设计风格,基于 HTTP 协议,遵循 REST(Representational State Transfer)原则。它的核心是:
后端(用 JS 写 API):比如用 Node.js + Express 搭建一个用户管理接口:
app.get('/api/users', (req, res) => {
res.json([{ id: 1, name: '张三' }]);
});
app.post('/api/users', (req, res) => {
const newUser = { id: Date.now(), ...req.body };
res.status(201).json(newUser);
});
这就是一个用 JavaScript 实现的 RESTful API 服务。
前端(用 JS 调用 API):浏览器里用 fetch 或 axios 发请求:
fetch('/api/users')
.then(res => res.json())
.then(data => console.log(data));
fetch('/api/users', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.s
tringify({ name: '李四' })
});
哪怕用 JavaScript 开发,设计质量取决于是否遵守 REST 原则,而不是语法:
很多人误以为“用了 fetch 就是 RESTful”,其实不是:
本质上,JavaScript 是工具,RESTful 是契约。写得好不好,看的是你有没有尊重这个契约。