get是从服务器上获取数据,post是向服务器传送数据。
GET请求:
请求的数据会附加在URL之后,以?切割URL和数据传输,多个參数用&连接。URL的编码格式採用的是ASCII编码。而不是uniclde,即是说全部的非ASCII字符都要编码之后再传输。
POST请求:
POST请求会把请求的数据放置在HTTP请求包的包体中。
因此,GET请求的数据会暴露在地址栏中,而POST请求则不会
get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB,
get安全性非常低,post安全性较高。
GET可以被缓存:
比方说通过GET请求了某个url,然后一些参数都明确的附在url后面了,查看浏览器历史访问的时候就可以看见了,一些文件也在访问的同时被缓存了,而一般POST的则不会。
注:RFC中POST请求也可以被缓存,但是浏览器一般也不支持,就跟TCP/IP和OSI模型一样,理想和现实的区别