本文转自:http://blog.csdn.net/jia20003/article/details/8497108
基本信息比较
属性
|
GET
方法
|
POST
方法
|
历史:
|
通常使用GET方法发送的数据作为URL的一部分将会被浏览器保存起来
|
使用POST方法提交的数据则不会作为URL的一部分,当然不会浏览器保存。
|
书签:
|
GET方法可能被浏览器当作书签(bookmark)保存
|
POST方法则不会
|
回退与重新提交:
|
使用GET方法的页面可以被回退并重新执行而不通知用户
|
POST方法会通知用户再次提交
|
Form编码类型:
|
GET提交数据只支持
application/x-www-form-urlencoded
|
POST支持application/x-www-form-urlencoded与multipart/form-data
|
参数:
|
由于GET的参数一般都跟在URL后面,支持的数据大小一般在2K,有些服务器可以支持到64K。这个就是很多网页超过64K就挂掉的真实原因。因为服务器限制了。
|
发送参数,还可以是文件,大小在理论上没有限制。
|
被攻击:
|
GET方法提交数据很容易被黑客攻击,实施脚本绑架。
|
POST方法相对GET方法不是那么容易被黑客攻击
|
数据类型限制:
|
GET方法提交数据只能是文本数据
|
POST方法则不受限制,二进制文件也可以。
|
安全性:
|
GET方法的安全性比POST方法要低一些,原因是数据做为URL的一部分是可见的。而且被浏览器存在历史访问记录中。
|
POST方法的安全性相对GET要高一些。因为参数数据不能被浏览器作为URL的一部分而存入历史访问记录中。
|
表单数据长度:
|
由于表单数据做为URL的一部分而URL长度通常是有限制的。
|
POST方法没有限制。
|
可用性:
|
GET方法通常不被用来发送密码与敏感信息。但是我发现还是有不少网站用GET来实现login。比如XXXX社区,它把login方法放在一个jquery完成JavaScript脚本中,用GET请求完成。
|
POST方法可以用来发送密码与其他敏感信息。
|
可见性:
|
GET方法对所有人可见
|
POST方法的变量是不可见的在URL中
|
缓存:
|
GET方法默认被缓存,这个就是很多时候用GET方法获取数据后面要跟个时间戳的原因
|
POST方法默认不被缓存。
除非Response头设置了Cache-Control或者Expires属性值。
|
最大的变量值:
|
GET支持最大为7607个字符
|
POST方法支持最大值为8MB
|
应用场合:
|
GET最常用的场合是获取数据,浏览器获取网页时候绝大多数通过GET方法实现,大多数浏览器下载也是使用GET方法获取文件
|
POST主要用来向服务器提交数据。
|
分享到:
相关推荐
在Java编程中,HTTP POST和GET是两种基本的HTTP请求方法,用于客户端向服务器发送数据。为了在Java中实现这些功能,我们需要引入特定的库,这些库通常被打包成JAR(Java Archive)文件。本篇文章将详细讲解HTTP POST...
下面将详细介绍HttpClient库,HTTP请求的基本概念,以及GET和POST方法的差异。 HttpClient是Apache基金会开发的一个开源库,它提供了全面、强大的功能来处理HTTP协议。通过HttpClient,开发者可以方便地创建HTTP...
HTTP协议主要包含两种请求方法:GET和POST,它们在Web开发中扮演着至关重要的角色。 GET方法是HTTP协议中最常见的请求方法,主要用于获取资源。当你在浏览器中输入URL并点击“回车”时,浏览器就向服务器发送了一个...
综上所述,这个服务提供了对“book”资源的全面操作,通过RESTful设计,利用HTTP的POST、DELETE、PUT和GET方法实现了创建、删除、更新和查询的功能,使得客户端能够以标准化的方式与服务端进行高效、灵活的数据交互...
在Java编程中,HTTP POST和GET方法是网络通信的基础,常用于向服务器发送数据或获取资源。Apache HttpClient库是一个强大的工具,它简化了这些HTTP操作。在这个“httppost和httpget需要的jar包-版本4.3.2”中,包含...
1. **Apache HttpClient**:这是最常用的HTTP客户端库,提供了对HTTP协议的全面支持,包括POST和GET方法。Apache HttpClient库主要由以下几个核心jar包组成: - `httpclient.jar`:包含了HTTP客户端的核心功能,如...
本篇文章将深入探讨jQuery中的两个核心Ajax方法——`get()`和`post()`,它们用于与服务器进行异步数据交换,是Web开发中不可或缺的部分。 `get()`和`post()`方法是jQuery提供的一对轻量级的Ajax接口,用于实现HTTP ...
在Java编程中,Apache HttpClient库是一个非常常用的工具,用于执行HTTP请求,如GET和POST,以获取或提交网络上的数据。HttpClient提供了丰富的功能,包括设置请求头、处理重定向、管理连接池等,使得开发者可以高效...
$.get()和$.post()方法 、 $.getScript()和$.getJson() 、 $.ajax()方法 、 序列化元素 、 jQuery中的Ajax全局事件 这些都有详尽的例子,一看代码,你就能明白jquery里实现ajax是怎么回事了,简单明了。
RestTemplate是Spring框架中用于处理HTTP客户端操作的重要工具,它提供了多种方法来发送HTTP请求,如GET、POST、PUT等。在本篇文章中,我们将详细探讨两个常用的GET方法:`getForObject()`和`getForEntity()`。 1. ...
首先,`HttpClient`是Apache的一个组件,它提供了对HTTP协议的全面支持,包括各种HTTP方法如GET和POST。在Android早期版本中,`HttpClient`是官方推荐的网络通信方式,但在API级别22之后,其已被弃用,取而代之的是`...
测试HTTP请求的方法通常包括GET和POST两种方式: **GET请求**: 1. 创建HttpClient实例。 2. 创建HttpGet请求对象,设置请求URL。 3. 使用HttpClient的execute方法发送请求并获取HttpResponse。 4. 处理响应,例如...
在DelphiXE开发环境中,HTTPGET是一个非常实用的控件,用于执行HTTP协议的基本操作,如GET、POST等。这个控件使得开发者可以方便地从Web服务器获取数据,或者向服务器发送数据,而无需深入了解底层的网络编程细节。...
开发者可以通过创建HttpClient实例,配置连接参数,然后通过这个实例执行HttpGet、HttpPost等请求对象。 以下是一些使用Apache HttpClient进行HTTP请求的基本步骤: 1. **初始化HttpClient**:首先,你需要创建一...
文档"**F4get与post.docx**"可能会详细讲解GET和POST的区别,包括它们在处理数据量、安全性、可缓存性等方面的差异,以及何时选择使用GET或POST。 "**F5HTTP.docx**"则可能全面介绍HTTP协议的各个方面,包括但不...
总的来说,$.get()和$.post()是jQuery中实现Ajax请求的核心方法,它们极大地简化了与服务器通信的过程,使得前端开发更为便捷。理解并熟练运用这两个方法,对于任何使用jQuery的开发者来说都至关重要。
这里我们将详细探讨使用cURL、`file_get_contents`和fsocket三种方法来实现POST请求。 1. cURL(Client URL Library): cURL是PHP中最常用的方法,功能强大且灵活。cURL库提供了丰富的选项来定制HTTP请求,包括...
接下来,`$.post()`方法与`$.get()`类似,但它是用于HTTP POST请求的。POST请求常用于向服务器提交数据,创建新资源或更新已有资源。基本用法如下: ```javascript $.post(url, data, success, dataType); ``` ...
POST请求是HTTP协议中的一个重要方法,与GET请求不同,POST请求通常用于向服务器提交数据,如表单提交、上传文件等场景。在修改版的http_load中,所有请求都会按照预设的顺序依次执行,这与原版的并行执行有所不同。...