Ajax中get请求和post请求的区别

2017-05-24  本文已影响142人  顽皮的雪狐七七

Form表单元素提供了两种数据传输的方式——get和post。虽然它们都是数据的提交方式,但是在实际传输时确有很大的不同。
Form中的get和post方法,在数据传输过程中分别对应了HTTP协议中的GET和POST方法。
二者主要区别如下:

  1. form表单中的method属性,默认的是get请求。

  2. get请求数据在地址栏显示
    post数据包含在请求主体里面,在头部里面有类型的显示

  3. get请求数据相对于post请求而言是不安全的。
    get请求是在通过地址栏URL传递,容易被第三方看到,而post请求是看不见的。

  4. get提交的数据有长度限制,大概在4k左右(数据量小)
    post提交数据没有限制,适合大数据量的传输

  5. 增、删、改使用的是post请求,安全性能高(登录、注册、注销、修改用post)
    查使用的是get请求(搜索、查找信息用get)

  6. 前端使用get请求后台使用$_GET获取
    前端使用post请求后台使用$_POST获取

  7. 客户端提交请求

get
请求行       xhr.open('get','01.php?name=xm&age=12');
请求头      (默认设置好的,不需要设置)
请求主体   (可以传空,因为get不需要传数据,数据都跟在地址栏里面)
post
请求行      xhr.open('post','01.php');
请求头     (必须设置请求头)
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
请求主体  xhr.send("name=xm&age=10");
  1. 后台接收表单数据(PHP中)
   $_GET
   前端提交用get,后台接收$_GET['username'];
   array关联数组,返回的是字符串,简单表单提交
   
   $_POST
   前端提交用post,后台接收$_POST['username'];
   array关联数组,返回的是字符串,简单表单提交
上一篇下一篇

猜你喜欢

热点阅读