Skip to content

计算机网络面试题

1. get 请求和 post 请求的区别?

一、核心区别(大白话 + 对比表)

特性GET 请求POST 请求
数据传递方式数据附在 URL 后面(可见)数据放在请求体里(不可见)
数据大小限制受浏览器 / 服务器限制(通常几 KB)无明确限制(可传大文件 / 大量数据)
安全性低(URL 明文传输,易被截取)高(请求体传输,相对隐蔽)
请求类型幂等(多次请求结果一致,无副作用)非幂等(多次请求可能有副作用)
缓存可被浏览器缓存(如刷新不重新请求)默认不缓存
使用场景查数据(无修改)改数据(增 / 删 / 改)

二、通俗拆解(举例子)

数据传递方式(最直观区别)

  • GET:比如访问 https://www.xxx.com/user?id=100&name=张三? 后面的 id=100&name=张三 就是传递的数据,直接显示在地址栏,所有人都能看到;
  • POST:同样传 id=100&name=张三,数据藏在请求 “后台”(请求体),地址栏看不到,只有服务器能接收到。

2. 幂等性(关键理解)

  • GET 幂等:比如刷新 “查询商品列表” 的页面,多次刷新结果一样,不会改变数据(只是查);
  • POST 非幂等:比如点击 “提交订单” 按钮,多次点击可能创建多个订单(会改数据),所以电商网站会做防重复提交处理。

3. 实际使用场景

  • GET:查数据(如搜索商品、查看用户信息、分页列表)、传简单筛选条件;
  • POST:提交表单(如登录、注册)、上传文件、创建 / 修改 / 删除数据(如新增订单、修改密码)。

如有转载或 CV 的请标注本站原文地址

访客数 --| 总访问量 --