GET POST
GET : 请求的数据会附加在URL之后,以?分割URL和传输数据,多个参数用&连接。URL的编码格式采用的是ASCII编码,而不是uniclde,即是说所有的非ASCII字符都要编码之后再传输。
POST : 请求会把请求的数据放置在 HTTP 请求包的包体中。上面的 item=bandsaw 就是实际的传输数据。
因此,GET请求的数据会暴露在地址栏中,而POST请求则不会。
传输数据的大小 :
。在HTTP规范中,没有对URL的长度和传输的数据大小进行限制。但是在实际开发过程中,对于GET,特定的浏览器和服务器对URL的长度有限制。因此,在使用GET请求时,传输数据会受到URL限制。
。对于POST,由于不是URL传值,理论上是不会受限制的,但是实际上各个服务器会规定对POST提交数据大小进行限制
安全性 :
POST的安全性比GET的高,这里的安全是指真正的安全,而不同于上面GET提到的安全方法中的安全,上面提到的安全及即时不修改服务器的数据。比如,在进行登陆的操作,通过GET请求,用户名和密码都会暴露在URL中,GET请求提交的数据还可能受到csrf攻击。
效率 :
GET比POST效率高。