GET与POST ajax请求:何时以及如何使用?

joh*_*ack 23 ajax post get

在创建ajax请求时,GET优于POST的优势是什么,反之亦然?我怎么知道在任何时候我应该使用哪个?这是一个有安全意识的决定吗?

另外,实际发送方式有何不同?

jim*_*imr 25

GET应该用于幂等操作,即可以在不改变任何东西的情况下安全地重复多次的操作.浏览器将缓存GET请求(对于普通和AJAX请求)

POST通常应该用于非idenpotent操作,比如保存一些东西.虽然您可以根据需要将它们用于其他操作.

GET的数据通过URL查询字符串发送.POST的数据单独发送.某些浏览器具有最大URL长度(我认为Internet Explorer是2048个字符),如果查询字符串变得太长,您将收到错误.


Tom*_*han 22

您应该在AJAX调用中使用GET和POST请求,就像在正常调用中使用GET和POST请求一样.基本经验法则:

请求会修改模型中的任何内容吗?

  • 是:请求将修改(添加/更新/删除)数据存储中的数据,或以其他方式更改服务器的状态(例如,导致创建文件).使用POST.
  • 否:请求不会影响服务器上的任何内容(数据库,文件系统,会话等),而只会检索信息.使用GET.


Óla*_*age 18

POST请求是您不希望意外发生的请求.GET请求是指由浏览器通过URL指向浏览器的用户发生的请求.

GET请求可以非常简单地重复,因为它们的数据基于URL本身.

您应该考虑AJAX请求,就像您考虑常规表单请求(以及他们的GET和POST)

  • 特别删除的东西. (2认同)