惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
人人都是产品经理
人人都是产品经理
博客园 - 聂微东
IT之家
IT之家
V
V2EX
Jina AI
Jina AI
V
Visual Studio Blog
有赞技术团队
有赞技术团队
博客园 - 司徒正美
博客园 - 叶小钗
The Cloudflare Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 三生石上(FineUI控件)
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Google DeepMind News
Google DeepMind News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
腾讯CDC
Google Online Security Blog
Google Online Security Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
N
News and Events Feed by Topic
N
News and Events Feed by Topic
The Last Watchdog
The Last Watchdog
W
WeLiveSecurity
月光博客
月光博客
Security Archives - TechRepublic
Security Archives - TechRepublic
Webroot Blog
Webroot Blog
SecWiki News
SecWiki News
博客园_首页
罗磊的独立博客
量子位
Latest news
Latest news
I
Intezer
V
Vulnerabilities – Threatpost
A
Arctic Wolf
Last Week in AI
Last Week in AI
Recent Commits to openclaw:main
Recent Commits to openclaw:main
S
SegmentFault 最新的问题
S
Security Affairs
阮一峰的网络日志
阮一峰的网络日志
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
酷 壳 – CoolShell
酷 壳 – CoolShell
P
Palo Alto Networks Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
N
News | PayPal Newsroom

串串狗小刊 ⭐️

Web 出海必备的外链列表 - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 我的 Web 3D 世界梦 - 串串狗小刊 OPC Web 出海之图视频的 AI 供应商渠道和简单外链 - 串串狗小刊 简单聊聊我的 Nodejs 世界观 - 串串狗小刊 Web 出海快速判断关键词法和推荐 3 个 SKILL - 串串狗小刊 Web 出海之演示建站盈利和朋友 Reyn 的教训 阅读源代码前要运行的 5 条 Git 命令 - 串串狗小刊 介绍几组我一直在使用的 Codex 插件 我观看哥飞年终会议复盘的 Web 出海笔记(下) - 串串狗小刊 观看哥飞年终会议复盘的 8 个 Web 出海笔记 - 串串狗小刊 Codex 敞开用的技巧和谷歌趋势的参考词 - 串串狗小刊 - 聊AI、互联网、前端技术 ~ Web 出海之外链提交频率和如何不花 Token 处理代码 - 串串狗小刊 程序员现在的最佳副业 ~ Web 出海 - 串串狗小刊 如何设计良好的 API - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 你跟 AI 对话后会发生什么? - 串串狗小刊 出海 Web 之 GSC 里的曝光量和点击量和外链的关系 - 串串狗小刊 出海 Web 不要 恋战 新词游戏站 - 串串狗小刊 无港卡开通 Stripe 收款和 Nofollow 转 Dofollow 技巧 - 串串狗小刊 DeepSeek 发布氮气加速器 DSpark!可惜好东西又开源了 - 串串狗小刊 简单聊聊出海 Web 的游戏站 - 串串狗小刊 停止使用 JWT ! - 串串狗小刊 出海 SEO 之 Vercel App 找词法与 agentic-inbox 管理邮箱 - 串串狗小刊 出海 Web 之 Vercel 的必踩坑和 140 分钟需求调研 - 串串狗小刊 出海 Web 之根据调研结果,挑选需求 - 串串狗小刊 AI 时代前端写 UI 必备的 49 种 UI 风格! - 串串狗小刊 超惊艳的 3D 开放世界浏览器游戏 LAAS ,全程 Claude Fable 5 无干预开发 - 串串狗小刊 月入 4w 刀的小耳朵 sir 的出海经验 - 串串狗小刊 出海建站之 Product Hunt 的封号限制解封 - 串串狗小刊 出海 SEO 新手们,给你们分享个新词发现工具! - 串串狗小刊 Node-js 新手需要知道什么? - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 用 AI 挑选 skill 头疼?聊聊四大 skill 仓库 - 串串狗小刊 让老外感受到了中国 SEO 的威力,amazing! - 串串狗小刊 驾驭工程后,AI 圈又一个新概念 Loop 工程(循环工程) - 串串狗小刊 Deepseek V4 Pro 极高的缓存命中率很重要! - 串串狗小刊 SEO 出海之田七使用 google trends 的经验 - 串串狗小刊 今年最燃Web出海奇迹,小白从0建站一个月入万刀全程详细复盘! - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 两个朋友做跨境独立站编程出海的经历、找词技巧 - 串串狗小刊 - 聊AI、互联网、前端技术 ~ SEO 之用 coolify 部署 nextjs 和 面包屑 使用误区 - 串串狗小刊 注意,JS 里的 JSON.parse() 也有安全隐患! - 串串狗小刊 拆解 aidocmaker 这个 SEO 神站,聊聊 Lovart 的交互设计 - 串串狗小刊 三个最近做 SaaS 的 JS 小技巧 - 串串狗小刊 关键词评估和 reddit、HN、product hurt 起号运营小妙招! - 串串狗小刊 WASM、Rust,前端的第二条命! - 串串狗小刊 - 聊AI、互联网、前端技术 ~ SEO 之 UGC 不做落地页和 ADS 无效流量解决方法 - 串串狗小刊 SEO 之 HARO 四两拨千斤大法 - 串串狗小刊 SEO 里的 schema 和 积沙成塔 - 串串狗小刊 AI 生成的代码太啰嗦 今日 SEO 小经验分享 - 串串狗小刊 时代在轮回,2026 年做网站又开始流行起来 - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 讲一下谷歌 SEO 常用的 8 个工具 - 串串狗小刊 五个谷歌 SEO 外链建设小妙招 - 串串狗小刊 分享几个 独立站 SEO 外链 建设的小经验 - 串串狗小刊 讲几个 出海独立开发 获取流量的经验 - 串串狗小刊 一个故事,把大厂互联网架构 70+ 概念串完 - 串串狗小刊 2026 年最新的 人工智能 学习路线(为期三个月) - 串串狗小刊 为什么现在的密码喜欢使用 2FA(TOTP、passkey )? - 串串狗小刊 openAI 团队告诉你,怎么把 Codex 用到极致! - 串串狗小刊 fetch 和 axios ,两者选谁? - 串串狗小刊 五年了,Zed 终于发布 1.0 版本了,简单聊聊 - 串串狗小刊 由 27 个荒废的项目,总结的 5 个失败的真相 - 串串狗小刊 今天再聊聊 Codex 的使用 - 串串狗小刊 分享几个短小精悍实用的 js 代码 - 串串狗小刊 54 天,26.9 万次连接:互联网到底有多吵? - 串串狗小刊 AI 时代前端开发最实用的 5 种设计模式 - 串串狗小刊 说 3 个前端新手可能不知道的技巧 - 串串狗小刊 Vite 这个前端打包工具是怎么工作的呢? - 串串狗小刊 - 聊AI、互联网、前端技术 ~ Vibe coding 一词发明人说 Agentic Engineering ,守住软件质量才是未来 - 串串狗小刊 如何利用 AI 理解新项目、接手新项目? - 串串狗小刊 2025 年主流的前端技术全集合 - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 德鲁・布伦尼格提出是 10 个 AI 编程时代的实践经验 - 串串狗小刊 其实 React 有点难用 - 串串狗小刊 今天简单聊聊 tailwindCSS - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 今天再聊聊 AI GEO,以及改善其效果的办法 - 串串狗小刊 Claude Code 向 Codex 的习惯迁移 - 串串狗小刊 几个提高 AI 提示词撰写能力的技巧 - 串串狗小刊 前端优化:核心 SEO 网页指标优化 LCP、INP 的思路 - 串串狗小刊 一个很冷门的 JS 知识点:逗号操作符 - 串串狗小刊 在 JS 中为什么要少用 class ? - 串串狗小刊 八个软件工程师需要了解的定理法则 - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 思想实验:如果 AI 出现在 2010 年会发生什么? - 串串狗小刊 求求你别再 .filter().map().sort() 了 - 串串狗小刊 一文讲清 16 个 React 常用钩子的机制和使用场景 - 串串狗小刊 三大反向代理 Nginx、Traefik、Caddy 的区别是什么? - 串串狗小刊 为什么我觉得 adhd 病是一种智商税 ? 为什么有些人天生就不快乐 ? - 串串狗小刊 讲 3 个我这几天刚刚遇到的 CSS 里的小技巧 - 串串狗小刊 SQL数据库中什么情况该加索引?以及常见的陷阱。 - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 2026 年前端死透了吗?还能入行吗? - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 你其实永远也用不到数据库! - 串串狗小刊 - 聊AI、互联网、前端技术 ~ 八个和 Claude Code 编码时的小技巧 - 串串狗小刊 10 分钟快速入手 React 概念,然后开始干活儿 - 串串狗小刊
前端和后端是怎么连接的?API、RESTful、JSON、CORS都是什么? - 串串狗小刊 - 聊AI、互联网、前端技术 ~
独元殇 · 2026-04-28 · via 串串狗小刊 ⭐️

今天讲一下全栈领域的几个概念,如果你是做全栈的,比如 react 等等一定得懂。也就是解释了前端、后端连接的最底层的几个知识。

比如 API、RESTful、JSON、CORS 等等。

API 是什么?

首先是 API ,全名叫:Application Programming Interface ,应用程序编程接口。

看起来很复杂,其实就是前端和后端约定好的一些做事方法。

两个团队一般是分开运作的,你不用关心我里面怎么实现【把用户的姓名、性别储存好】、【给你找出来那些人的会员快到期了】,你只需要得到一个链接就行,比如 https://example.com/member/expiring-list 这种。

这就是 API 。

或者你也可以理解为办事窗口的地址也行,你想查资料,去谷歌百度,你想看视频,去抖音,你想干什么什么,就使用什么什么链接...

什么是 RESTful

然后是 RESTful 。这个我们可能经常看到,但很多初学者不太懂这个是什么。

这是一种 API 风格,就像白酒里的 【酱香型白酒】一样。

你在 A 公司,建立 API 是一种风格,你被开除了,去了 B 公司,又是另一种风格.... 那大局上来看,肯定在程序员市场里、开源程序社区里,都是不适合的。因此就设立了这种风格。

其实很简单,就是 url 代表资源, HTTP 的方法代表动作。

比如拿 /tasks 举例,url 就只有一个 tasks,然后我们有很多类型的 HTTP 请求,比如 GET POST...

Url 一样,但干的事各不相同,比如:

GET    /tasks        → 获取所有任务
POST   /tasks        → 创建一个任务
PUT    /tasks/1      → 完全更新 id 为 1 的任务
PATCH  /tasks/1      → 局部更新 ID 为 1 的任务
DELETE /tasks/1      → 删除 id 为 1 的任务

说明一下:PUT 表示用新数据替换整个资源,而 PATCH 仅更新你发送的特定字段,其余部分保持不变。

然后我们在写文档的时候,就写 GET /tasks 或者 DELETE /tasks 就行了,合格的前端程序员就知道怎么回事了,能干什么了。

如果你不懂 RESTful ,你设计了个 https://example.com/api/getTasks 这种 ,/getTasks 、/deleteTasks ,就不是 RESTful ,就会不方便。

状态码

好的,现在我们有了 api url 了,知道去哪个【办事窗口】做事了,但是,你需要一个响应。

这就是状态码:

200 OK               → 请求成功,服务器返回所请求的数据
201 Created          → 资源已成功创建
400 Bad Request      → 请求有语法错误,服务器无法理解
401 Unauthorized     → 未授权,需要登录后才能访问
403 Forbidden        → 已登录但无权限访问该资源
404 Not Found        → 请求的资源不存在
500 Internal Error   → 服务器内部错误,导致请求未能完成

这是国际互联网标准的状态码。

常用的就是 404 ,200, 500 我们的前端代码可以根据不同的状态码,去搞不同的事。

JSON

前端和后端相互交换数据,常用的一种格式是 JSON 。

当然,还有很多格式,比如二进制、xml ..... 但更常用的是 JSON 。

它的优点只有一个,就是 人类阅读友好 。

{
  "id": 12345,
  "name": "张三",
  "email": "zhangsan@example.com",
  "age": 28,
  "isActive": true,
  "roles": ["admin", "editor"],
  "createdAt": "2024-04-27T10:15:30Z",
  "metadata": null
}

我们前端向后端发信息时,就类似这样:

fetch('/api/user', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' }, // this line matters
  body: JSON.stringify(
    {
      "id": 12345,
      "name": "张三",
      "email": "zhangsan@example.com",
      "age": 28,
      "isActive": true,
      "roles": ["admin", "editor"],
      "createdAt": "2024-04-27T10:15:30Z",
      "metadata": null
    }
  )
})

注意,我们一定得加上 application/json 等类似标志,这样后端才将其看做是 JSON 解析。

之后我们的后端,比如 express.JS 就这样解析你的信息,比如打印「张三」:

const express = require('express');
const app = express();

app.use(express.json()); // 解析 Content-Type: application/json 的请求体

app.post('/api/user', (req, res) => {
  const { id, name, email, age, isActive, roles, createdAt, metadata } = req.body;
  console.log(name); // "张三"
  res.json({ message: '接收成功', user: req.body });
});

app.listen(3000);

两个 await

如果你是个前端,你就知道异步。

在 JS 里,如果你给后端发信息,然后获取返回的信息,如果是调用 fetch ,你会发现有两个 await 。

// 第一个 await , 获取响应头信息
const res = await fetch('/api/user');   

// 第二个 await , 读取并解析响应体数据
const data = await res.json();          

哈哈哈,这里有个很有意思的知识!

你是不是以为,内容和 状态码 ,比如 200 、404 ,都是同一时刻到达你电脑的?

并不是,其实,后端给前端响应,并不一致。

你发一条请求,后端接到后,还没开始处理完整的数据内容,就会先把响应头发给你。这样很重要!!!

程序员喜欢抽象概念,我们往往误以为羽毛和铁球在月球能同时掉地上,那在地球上也能。

其实不是这样。响应是很快的,东西还在路上运输。

第一个 await 是响应,第二个才是服务器返回给你的信息。

这是两个时间点。

(因此会出现一个现象:有的时候,服务器返回了 404 ,但你还是收到了正确的东西,,,或者说你收到了 200 OK ,但是你却没收到货)

CORS

这个叫 【跨源资源共享】 。

互联网上的内容,只有有链接有权限,是随意访问的。但是 浏览器 里内置了个安全规则:网页不能跨域名读取响应。

这个不是 浏览器 使坏,而是保护用户。否则任何网站都能利用你在另一个网站的登录身份,干坏事了。

但是,如果你的资源,在服务器端,设置为 CORS (主要是通过响应头),就是允许 跨资源共享,那么浏览器就允许 CORS 运行的网页去访问你的内容了。

OPTIONS /api/tasks HTTP/1.1
Origin: http://localhost:5173     # 就像这个,运行这个域名访问
Access-Control-Request-Method: POST

【注意:CORS 是由浏览器强制执行的,不是服务器,一定要记清。防君子不防小人

如果 cors 运行所有网页,那么所有网页都能了,就比如我自己的网站里,很多 知乎 网站、新浪微博 网站的图片,而无法弄很多其他人网站里的图片。。 它们设置的 CORS 不同,知乎运行所有网站用它网站上的图片,像一个公益图床一样,速度还贼快。

基本就这个样子。