GET请求和POST请求的区别

本文详细对比了HTTP请求方法GET和POST的区别,包括数据传输位置、数据大小限制、安全性等方面的内容。GET请求数据附在URL之后,适合少量数据;POST请求数据放在HTTP包体中,适合大量数据传输。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

从表面现像上面看 GET 和 POST 的区别:

1、使用GET方式传递参数

  1. 在浏览器地址栏中输入某个URL地址或者单机网页上的一个超链接时候,浏览器发出的HTTP请求消息的请求方式为GET。
  2. 如果网页中的表单元素的method属性被设置为“GET”,浏览器提交这个from表单时候生成的HTTP请求消息的请求方式也为GET。
  3. GET 请求的数据会附在 URL 之后(就是把数据放置在 HTTP 协议头中),以?分割 URL 和传输数据,参数之间
    以&相连,如:login.action?name=zhagnsan&password=123456。POST 把提交的数据则放置在是 HTTP 包的包
    体中。
  4. GET 方式提交的数据最多只能是 1024 字节,理论上 POST 没有限制,可传较大量的数据。其实这样说是错误
    的,不准确的:
  5. “GET 方式提交的数据最多只能是 1024 字节”,因为 GET 是通过 URL 提交数据,那么 GET 可提交的数据量就跟
    URL 的长度有直接关系了。而实际上,URL 不存在参数上限的问题,HTTP 协议规范没有对 URL 长度进行限制。这个
    限制是特定的浏览器及服务器对它的限制。IE对URL长度的限制是2083字节(2K+35)。对于其他浏览器,如Netscape、
    FireFox 等,理论上没有长度限制,其限制取决于操作系统的支持。

2、使用POST方式传递参数

  1. POST请求方式主要用于向web服务器端程序提交form表单中的数据:from表单的method被设置为“POST”
  2. POST方式将各个表单字段元素及其数据作为HTTP消息实体内容发送给web服务器,传送的数据量要比使用GET方式传送的数据量大得多。
  3. POST 的安全性要比 GET 的安全性高。注意:这里所说的安全性和上面 GET 提到的“安全”不是同个概念。上
    面“安全”的含义仅仅是不作数据修改,而这里安全的含义是真正的 Security 的含义,比如:通过 GET 提交数据,用
    户名和密码将明文出现在 URL 上,因为(1)登录页面有可能被浏览器缓存,(2)其他人查看浏览器的历史纪录,那么别
    人就可以拿到你的账号和密码了,除此之外,使用 GET 提交数据还可能会造成 Cross-site request forgery 攻击。
  4. Get 是向服务器发索取数据的一种请求,而 Post 是向服务器提交数据的一种请求,在 FORM(表单)中,Method
    默认为”GET”,实质上,GET 和 POST 只是发送机制不同,并不是一个取一个发!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值