麦式参考 MickerBook Reference

API

Application Programming Interface

也常被叫作:接口后端接口数据接口那些给你网站供数据的地址

你可能会这么说

「我的网页想让后端给它数据,后端给的数据放在哪、怎么拿?」

API Application Programming Interface

程序之间约定好的取数 / 提交数据的通道,前端按固定格式喊一声,后端把结果送回来。

API 是程序给程序开的门。你的网页浏览器不会直接读后端硬盘上的数据库,它向一个固定地址发一条请求,后端处理完,把结果打包送回来。这个地址和约定好的格式,就是 API。最常见的形态是 REST 接口:你对某个地址发 GET 表示「我要数据」,发 POST 表示「我要提交」。

你不需要会写 API,但你要能看懂对话里有没有真的在调 API。判断方法很硬:真正的 API 调用有明确的「地址 + 请求方法 + 返回内容」,你可以在浏览器开发者工具的「网络」面板里亲眼看到请求发出去了、返回了什么状态码。凡是 AI 说「我接好了接口」却不给你地址、不让你看请求,就是它还没做或者压根没接。

对做东西的人来说,最常掉进去的坑是用假数据冒充真接口。前端先写死几条数据让页面「看起来能跑」,这很正常,但必须分清这是「写死的假数据」还是「真的从后端拿的」。两者的区别,刷新一下页面或换个数据源就能暴露:假数据的值永远不变。

长什么样 真实可交互,不是截图

// 对后端喊一声:把用户列表给我
GET  https://api.example.com/users
→  200 OK
[ { "id": 1, "name": "阿麦" }, { "id": 2, "name": "小麦" } ]
前端页面请求地址 + 方法后端返回 JSON 数据

上面展示的就是一次最普通的 API 调用:一个地址、一个方法(GET)、一个返回。你能在浏览器网络面板里看到的就是这东西。

拆开看,里面有这几块

  1. 1
    地址 Endpoint / URL

    要去哪取数据,通常是一个 https 地址。地址后面常带路径,如 /users、/orders。

  2. 2
    请求方法 Method

    告诉后端你想干什么:GET 是拿数据,POST 是提交新数据,DELETE 是删。

  3. 3
    请求头 Headers

    附加信息,比如告诉后端「我是谁、我能接受什么格式」。鉴权 token 常放在这里。

  4. 4
    返回内容 Response

    后端送回的结果,一般是一段 JSON,外加一个状态码说明这次请求成没成。

常见的有哪几种

REST 接口REST API

用地址 + 方法表示资源和动作,最常见也最好懂。

用在:大多数常规网页/小程序后端

GraphQLGraphQL

一次请求自定义要哪些字段,前端更自由,但后端更复杂。

用在:字段很多、前端取数很挑剔的复杂前端

WebSocketWebSocket

双向实时通道,不是一问一答,而是持续连着。

用在:聊天、实时通知、在线协作

容易搞混?这样区分

API 数据库 Database

数据库是存数据的地方,API 是取数据的门。前端不直接摸数据库,它走 API;后端在 API 背后才去碰数据库。你看到的是 API,数据库藏在后端更深处。

看 数据库
API MCP MCP

API 是给程序用的约定;MCP 服务器给AI 模型用的接口,工具描述要写给模型看。MCP 底层也常常是在调 API,但面向的对象和写法不同。

看 MCP

什么时候用得上

网页登录

前端把账号密码发给后端,后端验证后返回一个 token,之后每次请求带上它证明「我是我」。

商品列表

页面一打开就向商品接口发 GET,拿到列表渲染出来。下拉刷新或翻页时再发一次。

提交订单

把购物车内容用 POST 发给后端,后端落库后返回订单号和状态码。

你可以这样跟 AI 说

直接复制下面这段,把【】里的换成你的情况。它比一句「帮我加个 X」多说清楚了:改哪里、不许动啥、做完交什么。

【任务】我的 [列表页] 需要从后端拿数据
【范围】实现「打开页面 → 请求接口 → 渲染列表 → 空状态 / 加载中 / 出错」这三态;不做翻页、不做筛选
【技术边界】使用 [项目里已有的] 请求方式和地址;先不要把假数据当接口交付,假数据要能一眼看出是假的并标注清楚
【交付】
  1. 接口的真实地址、请求方法和返回的字段名
  2. 打开页面后我能在浏览器网络面板里看到哪个请求发出了、返回什么
  3. 后端还没好的时候页面怎么表现(必须明确是「加载失败」而不是假装有数据)
【提醒】不确定返回字段或地址就问我要,不要自己编字段名

这段话逼着 AI 说清三件事:真实地址、真实请求、真实返回字段。「后端还没好时页面怎么表现」专门用来堵住「写死假数据装成功」这一招。

它说「做好了」,你怎么自己验

这是本站的重头戏。AI 最会的不是写代码,是说「已完成」。这一条,它通常最多做到「运行时」这层:真的跑起来了,能在本机看到结果。

要亲眼看到这些,才算数

  • 按 F12 打开浏览器开发者工具,切到「网络」面板,刷新页面,找到那个接口请求,确认它真的发出去了、状态码是 200。
  • 让 AI 把接口地址、请求方法、返回的字段名逐字写给你,和你页面代码里的对得上。
  • 在数据库或后端把一条数据改了,刷新页面,确认页面上看到的值跟着变了——这能证明数据是真的从后端来的,不是写死的。
  • 断开后端或让它返回错误,确认页面出现的是「出错」提示,而不是一片空白或仍在显示假数据。
  • 确认地址是 https(或本地测试环境),没有把密钥、密码直接写在请求里。

它常这么糊弄你

  • 「接口已接好」——但你在网络面板里根本找不到这个请求,页面显示的是写死的假数据。一定要亲手打开网络面板看。
  • 把请求方法和数据做反了(该 GET 却 POST),页面看起来正常但数据是假的。
  • 返回字段名和页面用对不上,AI 说「已对接」,实际前端读的是自己猜的字段。
  • 请求里有密钥、token 被写死在代码里,还说「为了跑通先这样」。这会在上线时变成漏洞。
  • 「后端还没好,先用假数据顶一下」——但没人标记,上线时忘了换,用户看到全是假数据。

接口类任务最高验到「运行时」层:你亲眼看到请求发出并拿到真实返回就够。要说到「生产」,还涉及鉴权、限流、日志、可用性,那是更后面的事。

考考你 选一个你觉得对的

AI 说「商品列表接口已经接好了」。最靠谱的一句验证是?