Chinaunix首页 | 论坛 | 博客
  • 博客访问: 13043665
  • 博文数量: 1293
  • 博客积分: 13501
  • 博客等级: 上将
  • 技术积分: 17974
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 18:11
文章分类

全部博文(1293)

文章存档

2019年(1)

2018年(1)

2016年(118)

2015年(257)

2014年(128)

2013年(222)

2012年(229)

2011年(337)

分类: PHP

2012-03-08 17:06:09

原理介绍:理论上说,GET是从服务器上请求数据,POST是发送数据到服务器。事实上,GET方法是把数据参数队列(query string)加到一个URL上,值和表单是一一对应的。

比如说,name=John。在队列里,值和表单用一个&符号分开,空格用+号替换,特 殊的符号转换成十六进制的代码。因为这一队列在URL里边,这样队列的参数就能看得到,可以被记录下来,或更改。通常GET方法还限制字符的大小(大概是 256字节 )。事实上POST方法可以没有时间限制的传递数据到服务器,用户在浏览器端是看不到这一过程的,所以POST方法比较适合用于发送一个保密的(比如信用 卡号)或者比较大量的数据到服务器。 

区别: 
Post是允许传输大量数据的方法,而Get方法会将所要传输的数据附在网址后面,然后一起送达服务器,因此传送的数据量就会受到限制,但是执行效率却比Post方法好。 

建议: 
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式; 
2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式; 


METHOD的属性值为POST时,所有作为请求提交的
段中的HTML控件单元的值的集合,每个成员均为只读。(用于检索HTTP请求正文中表单元素的值。) 
sub.htm:注意方法是POST 
 
 
 
 
demo.asp: 
<%Dim TextCon 
TextCon=request.form("Content") 
response.write TextCon %> 
QueryString 表单信息通过get方式发送时,服务器端或另一个asp页面就使用querystring方法接收。(用于检索HTTP查询字符串中变量的值。) 
sub.htm:注意方法是GET 
 
 
 
 
demo.asp: 
<%Dim TextCon 
TextCon=request.querystring("Content") 
response.write TextCon %> 
此例中,你不用sub.HTM,在地址栏中输入demo.asp?content=演示Querystring看看。request.form可不能这样做。 
阅读(3278) | 评论(2) | 转发(2) |
给主人留下些什么吧!~~

dyli20002012-03-12 22:17:58

sxcong: 没说到要点上
get是直接把参数附加在url后面,而post是http的body
GET的包头:
GET /index.html?para1=value&.....  HTTP/1.1
...
Content-Type: text/html
C.....
受教受教了

sxcong2012-03-12 08:17:12

没说到要点上
get是直接把参数附加在url后面,而post是http的body
GET的包头:
GET /index.html?para1=value&.....  HTTP/1.1
...
Content-Type: text/html
Content-Length: 0
\r\n\r\n


POST的包头:
POST /index.html?para1=value&.....  HTTP/1.1
...
Content-Type: text/html
Content-Length: 256
\r\n\r\n
datadatadatadata.......

理论上说这根本是完全两回事,区别并不简单是看是不是带参数.当然普通用户可以这样理解,做为程序员要明白本质