Wil*_*and 10
GET请求更小更快; 并利用缓存,无论是在客户端还是在任何可能正在发挥作用的代理方面.
对于预计不会经常变化的数据,GET请求通常非常明智,因为除非必要,否则它们更有可能不被重新发送.
但是,对于预计会更频繁更改的数据,POST确实是更安全的选项,因为它将始终重新发送到服务器,确保始终遵守更改.
还有一些语义问题可以发挥作用.只有当意图修改服务器上的数据时才应该使用POST请求.
我正在阅读雅虎有关加速您的网站的最佳做法,他们已经很好地解释了为什么我们应该更喜欢过帖,这里是帖子摘要供您参考
使用XMLHttpRequest,POST在浏览器中实现为两步过程:首先发送标头,然后发送数据.因此最好使用GET,它只需要一个TCP数据包发送(除非你有很多cookie).IE中的最大URL长度为2K,因此如果发送的数据超过2K,则可能无法使用GET.
一个有趣的副作用是没有实际发布任何数据的POST就像GET一样.根据HTTP规范,GET用于检索信息,因此当您仅请求数据时,使用GET是有意义的(语义上),而不是将数据发送到服务器端存储.
有关详细信息,请参阅页面了解详情
我的问题是为什么不总是使用post方法进行AJAX调用
因为在RESTful应用程序中,将POST动词用于不修改服务器状态的操作是没有意义的.在RESTful应用程序中,请求的方式并不重要:它是普通的,AJAX还是机器人.
GET请求通常也更快,并且由浏览器缓存.