1、用途。

   GET方法一般用于查询并获取信息,这意味着它是幂等的(对同一个url的多个请求,返回结果完全一样),因为没有修改资源状态,所以它是安全的。而POST一般用于更新资源信息,既不是幂等,也不是安全的。

2、缓存。

   GET方法请求的数据会被浏览器缓存下来,会留下历史记录。而POST方法提交的数据不会被浏览器缓存下来,不会留下历史记录。

3、数据。

   客户端采用GET方法时,它是把要发送的数据添加url后面,就是把数据放在http协议的头中,在url后面用“”连接数据,而数据中的各个变量用“&”连接,因为传输的数据就在url中,而且又被缓存在浏览器中,所以传输的数据安全差。而客户端采用POST方法时,它把数据放在http请求报文的消息体中,因为传输的数据在消息体中,因此数据的安全性高些,但是用抓包软件进行抓包,也可以看到传递的数据内容。

4、长度。

   http协议没有对url的长度进行限制,但是特定的浏览器和服务器都会对url的长度存在限制,所以传输的数据量有限。http协议没有对http请求报文中的消息体的大小限制,取决于服务器的处理程序的能力