网络知识篇

什么是GET与POST方法

HTTP 方法:告诉服务器你要做什么

HTTP 请求方法(也叫"动词")决定了你对服务器资源要执行什么操作。最常用的两个是 GETPOST

💡 类比:去图书馆,GET 就是"我要借一本书"(获取),POST 就是"我要捐一本书"(提交)。

加载图表中...

GET 方法

GET 用于获取数据,是最常见的请求方法。

GET /api/articles?page=1&limit=10 HTTP/1.1
Host: example.com

特点:

  • 参数放在 URL 中(?key=value&key2=value2
  • 没有请求体
  • 可以被浏览器缓存
  • 可以被收藏为书签
  • 参数在地址栏可见

什么时候用 GET?

  • 打开一个网页
  • 搜索内容
  • 获取文章列表
  • 查看用户信息
// 获取文章列表
const res = await fetch("/api/articles?page=1");
const articles = await res.json();

POST 方法

POST 用于提交数据给服务器。

POST /api/articles HTTP/1.1
Host: example.com
Content-Type: application/json

{
  "title": "我的新文章",
  "content": "文章内容..."
}

特点:

  • 数据放在请求体中(不在URL里)
  • 适合传输大量数据
  • 适合传输敏感数据(如密码)
  • 不会被浏览器缓存

什么时候用 POST?

  • 用户注册/登录
  • 提交表单
  • 创建新内容
  • 上传文件
// 创建新文章
const res = await fetch("/api/articles", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    title: "我的新文章",
    content: "文章内容..."
  }),
});

GET vs POST 对比

特性GETPOST
用途获取数据提交数据
参数位置URL 中请求体中
数据大小有限制(URL长度)无限制
安全性参数可见(不安全)参数不可见(相对安全)
可缓存✅ 可以❌ 不可以
书签✅ 可以❌ 不可以
后退/刷新无副作用可能重复提交
加载图表中...

其他 HTTP 方法

除了 GET 和 POST,还有几个常用的方法:

方法用途示例
GET获取资源查看文章
POST创建资源发表新文章
PUT全量更新资源修改整篇文章
PATCH部分更新资源只改文章标题
DELETE删除资源删除文章

这些方法对应了数据的 CRUD 操作:

加载图表中...

RESTful API 设计规范

现代 Web API 通常遵循 RESTful 风格,用 HTTP 方法 + 路径来表达操作:

操作方法路径说明
获取所有文章GET/api/articles列表
获取单篇文章GET/api/articles/123详情
创建文章POST/api/articles新建
更新文章PUT/api/articles/123修改
删除文章DELETE/api/articles/123删除

🎯 AI编程小贴士:告诉AI"帮我写一个文章的RESTful API",它就会按照上面的规范帮你生成完整的增删改查接口代码。

小结

  • GET 用来获取数据,参数在URL中
  • POST 用来提交数据,参数在请求体中
  • GET 适合查询,POST 适合创建
  • HTTP 还有 PUT、PATCH、DELETE 等方法
  • RESTful API 用方法+路径的组合来表达不同操作