成为AI全栈 - 第1课:后端到底是干嘛的?一张图拆解登录

本文目标: 先建立全局认知,再让AI写代码😁

一个常见的误解

很多人以为后端很难。

"要懂服务器、数据库、缓存、消息队列......"

"要学 Java、Python、Go......"

"要配环境、搭框架、写 SQL......"

其实,后端的核心逻辑非常简单。

今天用一张图,让你彻底理解后端是干嘛的。

后端做什么?

前端发起接口请求。

后端: 接收请求 → 解析验证 →业务处理 → 数据库操作 → 返回响应

就这5步,没了。

以用户登录为例

用户在登录页面输入用户名和密码,点击"登录"。

第1步:接收请求

前端发送:POST/api/login,Body: { username: "张三", password: "123456" }

后端路由匹配到 /api/login,交给登录处理函数。

javascript 复制代码
// 监听请求
app.post('/api/login', (req, res) => {
  // 处理逻辑
})

第2步:解析验证

检查用户名和密码是否为空?格式是否正确?

如果为空 → 返回 400 "用户名和密码不能为空",停止执行。

根据 username 去数据库查用户,用 bcrypt 比对密码。

密码错误 → 返回 401 "用户名或密码错误"。

第3步:业务处理

如果密码正确,生成 JWT Token(一个加密的字符串), 同时提取用户登录IP / 时间等。

第4步:操作数据

存储第三步数据到数据库。

第5步:返回响应

返回给前端:HTTP状态码: 200, 接口返回JSON数据

前端拿到 Token,存储起来,后续请求带上它证明身份。

nodejs + expres示例

🌟注意:

  1. 本文初期用js写后端, 帮助前端同学过渡, 后续会写py和java代码, 都是通过提示词让AI写😁

  2. 下面代码大概看下就行, 后续文章会完善真读数据库, 反正都是AI直接生, 主要看提示词:基于express 生成登录接口 输入body参数(username,password), 返{"success":true,"data":{"token":"xxx","user":{"id":1,"name":"张三"}}} token要真验.

下面是把提示词给deepseek生成的:

php 复制代码
const express = require('express');
const jwt = require('jsonwebtoken');
const app = express();

app.use(express.json());

// 模拟用户数据(实际应该查数据库)
const users = [
  { id: 1, username: 'zhangsan', password: '123456', name: '张三' },
  { id: 2, username: 'lisi', password: '123456', name: '李四' }
];

// 密钥(实际应放在环境变量)
const SECRET_KEY = 'your-secret-key-123456';

app.post('/api/login', (req, res) => {
  const { username, password } = req.body;

  // 1. 验证用户名密码
  const user = users.find(u => u.username === username && u.password === password);

  if (!user) {
    return res.status(401).json({
      success: false,
      error: '用户名或密码错误'
    });
  }

  // 2. 生成真正的 JWT token
  const token = jwt.sign(
    { userId: user.id, username: user.username },
    SECRET_KEY,
    { expiresIn: '7d' }  // 7天有效期
  );

  // 3. 返回结果
  res.json({
    success: true,
    data: {
      token: token,
      user: {
        id: user.id,
        name: user.name
      }
    }
  });
});

app.listen(3000, () => {
  console.log('服务器已启动:http://localhost:3000');
});

核心结论

后端 = 接收请求 → 解析验证 →业务处理 → 数据库操作 → 返回响应

所有后端语言都在解决这5件事,只是语法不同。

学会用概念描述需求,AI 就能帮你生成任何语言(Bun.js / Python / Java)的代码。

后续

后端并没有那么复杂吧, 别着急, 今天先说这么多, 后续课程会继续拆解其他开发任务。

思考题

回想一下你平时调用的后端接口(比如获取用户列表、提交表单),试着用今天学的"5步法"拆解一下后端做了什么?

欢迎在评论区分享你的思考。

相关推荐
前端若水8 小时前
会话管理:创建、切换、删除对话历史
前端·人工智能·python·react.js
Bigger8 小时前
mini-cc:一个轻量级 AI 编程助手的诞生
前端·ai编程·claude
涵涵(互关)8 小时前
Naive-ui树型选择器只显示根节点
前端·ui·vue
BY组态8 小时前
Ricon组态系统最佳实践:从零开始构建物联网监控平台
前端·物联网·iot·web组态·组态
BY组态8 小时前
Ricon组态系统vs传统组态软件:为什么选择新一代Web组态平台
前端·物联网·iot·web组态·组态
SoaringHeart8 小时前
Flutter进阶:OverlayEntry 插入图层管理器 NOverlayZIndexManager
前端·flutter
放下华子我只抽RuiKe58 小时前
React 从入门到生产(四):自定义 Hook
前端·javascript·人工智能·深度学习·react.js·自然语言处理·前端框架
IT_陈寒10 小时前
Redis缓存击穿把我整不会了,原来还有这手操作
前端·人工智能·后端
idcu10 小时前
深入 Lyt.js 组件系统:L2 渲染引擎层的核心
前端·typescript
kyriewen11 小时前
面试官让我查各部门工资最高的员工,我用AI三秒写出窗口函数,他愣了
后端·mysql·面试