阅读:2086回复:0
http中get与post的区别简单版
先简单的介绍一下get与post
l Get:是以实体的方式得到由请求URI所指定资源的信息,如果请求URI只是一个数据产生过程,那么最终要在响应实体中返回的是处理过程的结果所指向的资源,而不是处理过程的描述。 l Post:用来向目的服务器发出请求,要求它接受被附在请求后的实体,并把它当作请求队列中请求URI所指定资源的附加新子项,Post被设计成用统一的方法实现下列功能: 1. 对现有资源的解释 2. 向电子公告栏、新闻组、邮件列表或类似讨论组发信息。 3. 提交数据块 4. 通过附加操作来扩展数据库 从从上面描述可以看出,Get是向服务器发索取数据的一种请求;而Post是向服务器提交数据的一种请求,要提交的数据位于信息头后面的实体中。 HTTP请求:get与post方法的区别 相同点; l Get与post(对于“post”除非相应里有cache-control或者expires头域指示其相应不可缓存)请求的相应是可缓存的; 不同点: 1. Get是从服务器上获取数据,post是向服务器传送数据 2. Get是把参数数据队列加到提交表单的action属性所指定的URL中,值和表单中各个字段一一对应,在URL中可以看到,post是通过HTTP post机制,将表单内各个字段与其内容放置在html header内一起传送到action属性所指的URL地址,用户看不到这个过程; 3.get传送的数据量较小,不能大于2kb;post传送的数据量较大,一般被默认为不受限制的。但理论上,IIS4中最大量为80kb,IIs5中为100kb; 4. get安全性非常低;post安全性较高; 5.get适用于多请求,而保留post仅用于更新站点; 6. 在form提交的时候,如果不指定method,则默认为get请求,form中提交的数据将会附加在url之后,以?与URL分开。字母数字字符原样发送,但空格转换为“+”号,其它符号转换为%xx,其中xx为该符号为16进制表示的ASCII(或ISO Latin-1)值; 7. get请求提交的数据放置在HTTP请求协议头中,而post提交的数据则放在实体数据数据中; 在表单中适用“post”和“get”区别 在form里面,可以适用post也可以适用get。它们都是method的合法取值。但是,post和gei方法在适用上至少两点不同; 1. get方法通过URL请求来传递用户的输入。Post方法通过另外的形式。 2. get方式的提交需要用Request.QueryString来取得变量的值,而post方式提交时,必须通过Request.Form来访问提交的内容 |
|