API 真正的工作方式:初学者构建与理解后端端点指南

发布: (2025年12月8日 GMT+8 06:29)
6 min read
原文: Dev.to

Source: Dev.to

什么是 API?

API 代表 Application Programming Interface(应用程序编程接口)。它充当两套系统之间的桥梁,使它们能够相互通信。
把它想象成餐厅里的服务员:你(用户)下单,服务员(API)把订单送到厨房(服务器)。厨房准备好食物后,服务员再把食物送回给你。

从技术角度看,前端(例如 React、Vue、HTML)发起请求,API 将该请求传递给 后端 进行逻辑处理,然后 API 返回响应。几乎所有 API 都使用 JSON 这种轻量级数据格式进行通信。

API 请求到底是如何工作的

当你在 Instagram、Snapchat 或任何应用上点击 “登录” 时,浏览器会把数据(通常是 JSON)编译好并通过互联网发送。

  1. DNS 查询 – 域名系统将网站名称转换为 IP 地址,以便请求能够定位到正确的服务器。
  2. 中间件层 – 安全检查点负责日志记录、身份验证以及其他预处理,随后请求才会到达后端控制器。
  3. 控制器 – 操作的大脑;它处理业务逻辑并对数据库执行查询。
  4. 响应 – 后端将结果组织成结构化的 JSON 响应,发送回网络,前端解包信息以更新 UI(例如登录成功或显示错误)。

整个往返通常只需几毫秒,使交互感觉瞬间完成。

什么是 REST API

REST(Representational State Transfer)是大多数现代 API 使用的标准架构。REST 通过以下端点进行操作:

GET /api/users
POST /api/login
GET /api/products/:id
DELETE /api/posts/12

HTTP 方法

  • GET – 获取数据
  • POST – 发送数据
  • PUT – 更新数据
  • DELETE – 删除数据

常见状态码

  • 200 – OK(成功)
  • 201 – Created(已创建)
  • 400 – Bad Request(错误请求)
  • 404 – Not Found(未找到)
  • 500 – Server Error(服务器错误)

什么是端点(Endpoint)

端点就是 URL + HTTP 方法 的组合,用来执行某个操作。

示例

操作示例端点
获取所有用户GET /api/users
获取单个商品GET /api/products/:id
创建账户POST /api/register
登录POST /api/login

端点输入的类型

路由参数:   /users/:id
查询参数:   /search?keyword=api
请求体数据: { "email": "test@gmail.com" }

构建你的第一个 API 端点

环境搭建

npm init -y
npm install express

创建一个名为 server.js 的文件并添加以下代码:

// server.js
const express = require('express');
const app = express();
const PORT = 3000;

// 简单的 GET 端点
app.get('/api/hello', (req, res) => {
  res.json({ message: 'Hello, world!' });
});

app.listen(PORT, () => console.log(`Server running on port ${PORT}`));

工作原理

  • app.get() – 监听 GET 请求
  • /api/hello – 端点 URL
  • req – 进入的请求(传入的数据)
  • res – 服务器响应(返回的数据)

POST 端点(发送数据)

app.use(express.json()); // 读取 JSON 请求体

app.post('/api/register', (req, res) => {
  const { name, email } = req.body;

  res.status(201).json({
    message: 'User created successfully',
    data: { name, email }
  });
});

什么是中间件?(初学者友好)

中间件 = 在你的主逻辑 之前 执行的函数。

app.use((req, res, next) => {
  console.log(`${req.method} ${req.url}`);
  next();
});

常见用途

  • 日志记录
  • 身份验证
  • 数据验证
  • 处理 CORS

中间件支撑了后端系统的大部分功能。

API 如何与数据库交互

Endpoint → Controller → Database → Response

简化示例

app.get('/api/user/:id', async (req, res) => {
  try {
    const user = await User.findById(req.params.id);
    res.json(user);
  } catch (error) {
    res.status(500).json({ message: 'Server error' });
  }
});

即使你暂时没有使用数据库,这个模式也会出现在每个后端项目中。

使用 Postman 或 Thunder Client 测试 API

示例测试

GET 请求

  1. 选择 GET
  2. 输入 http://localhost:3000/api/hello
  3. 点击 Send(发送)

POST 请求

  1. 选择 POST
  2. 输入端点(例如 http://localhost:3000/api/register
  3. 前往 Body → JSON 并添加数据:
{
  "name": "Kelvin",
  "email": "kelvin@example.com"
}

测试工具可以让你在不构建前端的情况下验证 API。

小结

API 是连接前端、数据库和第三方服务的无形粘合剂。通过掌握核心生命周期——了解请求如何在端点触发逻辑,如何通过中间件保障管道安全,以及结构化响应如何闭环——你将从编写孤立函数迈向构建稳健、可扩展的系统。这一基础知识把后端从“黑盒”转变为可预测、可管理的数据流工作流。

Back to Blog

相关文章

阅读更多 »