切换·Esc 返回

后端Backend

后端入门
在服务器上处理业务规则、数据和敏感信息

用户登录或提交表单时,后端会接收前端 Frontend发来的请求,检查业务规则和访问权限,读写数据库 Database,再把结果返回给前端。数据库密码、API 密钥等敏感信息,以及价格、库存等不能由用户随意修改的规则,都应该留在服务端。

浏览器POST/api/signup请求 →
1路由接收找到处理代码2检查与处理校验业务规则3读写数据连接数据库
← 响应201 Created{ "userId": 2048 }

什么时候用

  • 页面需要登录、长期保存数据,或调用需要保密密钥的服务时,让后端处理
    需要确认身份并保存数据
    登录表单后端验密码建立会话
  • 一次提交要经过校验、写数据库和发通知时,由一个后端接口按顺序完成
    一次提交,由后端串起步骤
    校验写数据库发送通知
    前端只提交一次,并接收最终结果
  • 价格、库存和权限必须在后端再算一遍,因为前端代码可以被修改
    关键规则在服务端再算一遍
    前端传来total = ¥1 后端重算total = ¥99
  • 先画清“收到请求 → 检查 → 处理 → 返回结果”,再让 AI 写代码
    先画清最小请求流程
    POST /orders检查库存保存订单201 成功

什么时候不用

  • 页面只有固定文字和图片时,不要硬加服务器和数据库
    只有文字和图片的介绍页
    真正需要HTML + CSS 额外增加服务器 + 数据库
    没有登录或数据保存时,后端可能只是负担
  • 不要把数据库管理密钥放进前端:访客可能看到密钥并读取整库数据
    管理密钥进入前端包
    main.js · 所有访客都能下载SUPABASE_SERVICE_ROLE=eyJ••••
    拿到密钥的人可能读取或删除整库数据
  • 部署显示成功不代表安全;输入、身份和权限仍要逐项检查
    部署成功 ≠ 已经安全
    部署✓ Online输入校验✕ 缺失权限检查✕ 缺失
  • 不要一开始就生成十几个服务;先完成一条最小请求流程
    先完成一条请求流程
    第一版1 个接口 · 1 张表 过早设计12 个服务 · 6 个队列
组成结构 · Anatomy
① 请求② 业务处理③ 数据④ 响应
1请求Request浏览器发送方法、地址、参数和必要的身份信息
2业务处理Business Logic检查输入与权限,执行这个产品自己的规则
3数据层Data Layer读取或修改数据库,也可能调用别的服务
4响应Response用状态码和 JSON 告诉前端成功、失败以及结果
典型使用场景
提交表单后保存到数据库
表单提交把资料安全写入数据库
POST /profiles校验字段写入数据库201 Created
后端负责检查、保存并返回结果
登录后读取个人资料
登录资料凭登录状态读取当前用户
Cookie Session后端确认身份查询 user_23返回个人资料
服务端调用第三方 AI
第三方 AI密钥只在服务器中使用
浏览器请求POST /api/summarize 服务端调用AI_API_KEY = ••••••
访客只能拿到摘要结果,看不到服务密钥
订单价格由后端重新计算
订单结算服务端重新计算真实价格
商品¥99 × 2优惠规则减 ¥20后端合计¥178
不直接相信浏览器传来的 total