成为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步法"拆解一下后端做了什么?

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

相关推荐
xiaofeichaichai6 分钟前
前端安全 XSS 与 CSRF
前端·安全·xss
JS菌14 分钟前
Skills 动态加载系统:让 AI Agent 按需获取领域知识
前端·人工智能·后端
weedsfly17 分钟前
Sass 代码复用完全指南:从变量到模块化
前端
张拭心21 分钟前
Android 17 新特性:后台音频交互限制加强
android·前端
洛星核22 分钟前
CrewAI 安装、使用方法详细全解
人工智能·github·人机交互·ai编程·agi·智能体
神奇小汤圆27 分钟前
Vector Graph RAG 开源!一套向量数据库同时搞定语义检索+RAG多跳
后端
小高学习java28 分钟前
事务的边界问题,如何判断数据回滚时机。
java·数据库·后端
张拭心30 分钟前
Android 17 新特性:ProfilingManager 新触发器
android·前端
w32963627134 分钟前
八、OpenCode 高阶玩法:CLI 自动化、CI/CD 集成与远程协作
运维·ci/cd·自动化·ai编程·开发工具·opencode