get和post本质区别,get和post的本质区别

http://www.itjxue.com  2023-01-09 00:23  来源:未知  点击次数: 

get请求和post请求区别

http请求方式有get、post、put、delete等多种,最常用的就是get和post

1、GET请求一般用去请求获取数据,

????????POST一般作为发送数据到后台时使用

2、GET请求也可传参到后台,但是其参数在浏览器的地址栏的url中可见,所以隐私性安全性较差,且参数长度也是有限制的

? ? ? ? POST请求传递参数放在Request body中,不会在url中显示,比GET要安全,且参数长度无限制

3、GET请求刷新浏览器或回退时没有影响

? ? ????POST回退时会重新提交数据请求

4、GET 请求可被缓存

????????POST 请求不会被缓存

5、GET 请求保留在浏览器历史记录中

???????POST 请求不会保留在浏览器历史记录中

6、GET 请求可被收藏为书签

? ??????POST 不能被收藏为书签

7、GET请求只能进行url编码(application/x-www-form-urlencoded)

????????POST支持多种编码方式(application/x-www-form-urlencoded 或 multipart/form-data。为二进制数据使用多重编码。)

8、GET请求比较常见的方式是通过url地址栏请求

????????POST最常见是通过form表单发送数据请求

个人查了一些资料后的理解:

post请求和get请求都是HTTP的请求方式,本质上来说并无区别,底层实现都是基于TCP/IP协议。

但是请求有各种各样的方式,于是HTTP对请求方式进行了划分和规定,于是产生了get、post处理请求的分工和区别。

此外还有搜索到另外一个区别:GET产生一个TCP数据包;POST产生两个TCP数据包。

对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);

而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

1. GET与POST都有自己的语义,不能随便混用。

2. 据研究,在网络环境好的情况下,发一次包的时间和发两次包的时间差别基本可以无视。而在网络环境差的情况下,两次包的TCP在验证数据包完整性上,有非常大的优点。

3. 并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次。

post和get有什么不同?

一、区别与应用: Form中的get和post方法,在数据传输过程中分别对应了HTTP协议中的GET和POST方法。二者主要区别如下: 1、Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据。 2、Get将表单中数据的按照variable=value的形式,添加到action所指向的URL后面,并且两者使用“?”连接,而各个变量之间使用“”连接;Post是将表单中的数据放在form的数据体中,按照变量和值相对应的方式,传递到action所指向URL。 3、Get是不安全的,因为在传输过程,数据被放在请求的URL中,而如今现有的很多服务器、代理服务器或者用户代理都会将请求URL记录到日志文件中,然后放在某个地方,这样就可能会有一些隐私的信息被第三方看到。另外,用户也可以在浏览器上直接看到提交的数据,一些系统内部消息将会一同显示在用户面前。Post的所有操作对用户来说都是不可见的。 4、Get传输的数据量小,这主要是因为受URL长度限制;而Post可以传输大量的数据,所以在上传文件只能使用Post(当然还有一个原因,将在后面的提到)。 5、Get限制Form表单的数据集的值必须为ASCII字符;而Post支持整个ISO10646字符集。 6、Get是Form的默认方法。 二、从HTML中发送数据,在ASP中如何接收? 在form表单的action属性值里面有一个相对路径指向asp文件。就是用这个asp文件来接收和处理的

post和get的区别是什么?

意思不同。

post:n. 岗位;邮件;标杆;vt. 张贴;公布;邮递;布置;vi. 快速行进。做动词的时候是实义动词。

get:n. 生殖;幼兽;vi. 成为;变得;到达;vt. 使得;获得;受到;变成。做动词的时候,可以是实义动词,也可以是连系动词,后面接表语,构成系表结构。

例如:

Soon they assigned him to a new post. (名词)

不久, 他们派他到一个新的工作岗位。

The post on the building staggered violently in the wind. (名词)

楼上的标杆在风中猛烈的摇晃着。

Post your feedback and tell us what you think. (动词)

写下你的意见,并告诉我们你的想法。

The ship was posted missing. (动词)

已贴出通告宣布该船失踪。

From whom shall I get comfort? (实义动词)

我从谁那儿能得到安慰呢?

Only you study hard can you get good results. (实义动词)

只有肯努力,才能得到好的学习成绩。

A good friend will visit you in hospital and say “Get well soon ” and leave. (连系动词)

你的朋友在医院看你的时候会说“快点好起来”。

post和get的区别

区别一:语义上的区别

1、Get向服务器请求数据。依照HTTP协议,get 是用来请求数据。

2、Post向服务器发数据。依照HTTP协议,Post的语义是向服务器添加数据,也就是说按照Post的语义,该操作是会修改服务器上的数据的。

区别二:服务器请求的区别

1、Get请求是可以被缓存的,举个例子,你访问baidu.com,就是向baidu的服务器发了个Get请求,这个请求的返回,也就是baidu的主页页面内容,会被缓存在你浏览器中,短时间再次访问,其实是拿到的浏览器中的缓存内容。另外Get请求只能接收ASCII码的回复

2、Post请求是不可以被缓存的。对于Post方式提交表单,刷新页面浏览器会弹出提示框? “是否重新提交表单”,Post可以接收二进制等各种数据形式,所以如果要上传文件一般用Post请求。

区别三:参数放请求头和请求体的差别

1、Get请求通常没有请求体(当然这也是可以由程序猿心情改变的),在TCP传输中只需传输一次(而不是一个包),所以Get请求效率相对高。

2、Post请求将数据放在请求体中,而实际传输中,会先传输完请求头,再传输请求体,是分为两次传输的(而不是两个包)。Post请求头会比Get更小(一般不带参数),请求头更容易在一个TCP包中完成传输,更何况请求头中有Content-Length的标识,可以更好地保证Http包的完整性。

(责任编辑:IT教学网)

更多

相关搜索营销文章