🤵
你用微信登录淘宝、用支付宝付美团外卖、用 iPhone 查看微信运动步数。
这些 App 互不隶属,但它们之间能互相传递数据。
谁在中间传话
↓ 答案是 API,3 分钟搞懂
💻 编程

API

Application Programming Interface · 应用编程接口

API 就是餐厅的服务员——你不用进厨房,告诉他要什么就行。
🧒 极简版🧑 场景版🎓 精准版

🧒 极简版

你去餐厅吃饭。你不用自己进厨房做菜——你告诉服务员"来份宫保鸡丁",服务员把你的需求传给厨房,厨房做好了,服务员端给你。

API 就是这个服务员。它是你(App)和服务器(厨房)之间的传话人。你只需要知道"菜单上有什么"就行,不用管厨房是怎么做菜的。

🧑 场景版

你在美团点外卖,用支付宝付款。

发生了什么?美团不可能自己做一个支付系统——它调用了支付宝的 API。具体过程:
1. 美团向支付宝 API 发送一个请求(Request):"用户要付 35 元"
2. 支付宝处理完后返回(Response):"支付成功,订单号 xxx"
3. 美团收到结果,显示"已付款"

整个过程美团不需要知道支付宝内部怎么运作——它只需要按照 API 文档"点菜"就行。

🎓 精准版

API 是一组预定义的协议和接口,允许不同软件系统之间进行通信。现代 Web API 通常基于 HTTP/REST 架构:

· 端点(Endpoint):URL 地址,如 `GET /api/weather?city=beijing`
· HTTP 方法:GET(读)、POST(写)、PUT(改)、DELETE(删)
· 请求体(Request Body):发送的数据(通常 JSON 格式)
· 响应体(Response):返回的数据 + 状态码(200=成功, 404=没找到, 500=服务器错误)
· 认证(Auth):API Key / OAuth / JWT 验证调用者身份

🎯 核心类比:餐厅服务员

看一次完整的"点菜→上菜"过程

👤
你(App)坐在桌前点菜
🤵
API(服务员)传递你的需求
👨‍🍳
服务器(厨房)处理并返回结果
📋 "来份宫保鸡丁!"

🧪 动手试试:你来点菜(调 API)

选择一道"菜",看 API 请求和响应的完整过程

👆 选择上方任意一个功能,看 API 调用的完整过程

📦 拆开看

点击卡片翻转

📋请求 Request点我翻转 ↻
你发给 API 的"点菜单"——包含你要什么、参数是什么。相当于告诉服务员"我要一份宫保鸡丁,不要花生,微辣"。🍽️ 你的点菜单
📦响应 Response点我翻转 ↻
API 返回给你的"菜"——包含数据和状态码。200="菜做好了",404="没这道菜",500="厨房着火了"。🍽️ 端上来的菜
🔑API Key点我翻转 ↻
你的"会员卡"——证明你有权限调用这个 API。没有 Key 就像没有餐厅预约,服务员不会理你。🎫 餐厅的预约码

💡 API 在日常生活中无处不在

🌤️ 天气 App:调用气象局 API 获取温度数据

💳 扫码支付:商家 App 调用微信/支付宝 API

🗺️ 打车 App:调用地图 API 显示路线和定位

🤖 ChatGPT:你打字的那个界面调用了 OpenAI API

📱 微信登录淘宝:淘宝调用微信 API 验证你的身份

你每天用的 App,90% 的功能背后都在调用别人的 API。

⚠️ 别搞混

❌ 很多人以为
API 是程序员才用的技术概念,和普通人没关系。
✅ 其实是
你每天打开手机的每一个操作,背后几乎都有 API 在工作。你虽然不直接调用它,但你是 API 的最终用户。
❌ 很多人以为
API 就是一个网址/链接。
✅ 其实是
API 是一套完整的通信协议——包含端点、请求格式、认证方式、返回格式、错误处理。网址只是 API 的"地址",不是 API 本身。

📏 类比的边界

⚠️服务员是人,会犯错、会偷懒。API 是代码,严格按规则执行,不会"忘记"你的要求。
⚠️餐厅同时只能接待有限客人,但 API 可以同时处理成千上万个请求(通过负载均衡)。

🔗 相关概念

✅ 秒测

1你在美团用支付宝付款时,API 扮演什么角色?
A. 美团自己处理了支付
B. 美团通过 API 向支付宝发送"请帮用户付 35 元"的请求
2API 返回状态码 404,是什么意思?
A. 服务器崩了
B. 你请求的东西不存在(菜单上没这道菜)
C. 付款成功
3为什么说"API 是互联网的基础设施"?
A. 因为每个 App 都有 API
B. 因为不同 App 之间靠 API 互相传递数据,没有 API 就没有互联互通

手机端可长按图片保存到相册