Ajax

  1. Ajax:Asynchronous Javascript And XML
    异步JavaScript和XML

  2. ajax开发步骤

    1. 创建ajax对象

         var oAjax = null;
         //判断window是否有XMLHttpReques对象
         if(window.XMLHttpRequest){
             oAjax = new XMLHttpRequest();
         }else{
             oAjax = new ActiveXObject('Microsoft.XMLHTTP');
         }
    2. 设置请求方式和路径

      ajax.open("GET",url,true)
    3. 发送请求

    ajax.send(null)
    1. 当onreadyStatechange为4时,判断statucode,然后取数据

      oAjax.onreadystatechange=function(){
      //readyState=4表示所有的http响应完成
      if(oAjax.readyState==4){
         if(oAjax.status>=200 && oAjax.status<300 || oAjax.status==304){
            //取得数据
             var result=oAjax.responseText;
             var j=JSON.parse(result);
             alert(j.name);
         }else{
             alert('error');
         }
      }
  3. url格式化函数

    function addURLParam(url, name, value) {
        url+=(url.indexOf("?")==-1)?"?":"&";
        url+=encodeURIComponent(name)+"="+encodeURIComponent(value);
    }
    
  4. get方式发送数据

    ajax.open("GET",url,true);//参数在url上
    ajax.send(null);
  5. post方式发送数据

    ajax.open("POST",url);
    ajax.setRequestHeader("CONTENT-TYPE","application/x-www-form-urlencoded");// post发送参数前,需要设   置编码格式
    
     ajax.send("name=xxx&pwd=xxx");// 发送post数据
  6. ajax的跨域问题
    跨域

    http://www.163.com

    http://www.163.com:80

    端口不同
    http://www.163.com:8080

    协议不同
    https://www.163.com:80

    模块不同
    http://news.163.com:80

    网址不同
    http://www.qq.com:80

  7. 解决ajax的跨越问题
    方法一

    response.headers['Access-Control-Allow-Origin'] = '*'
    response.headers['Access-Control-Allow-Methods'] = 'OPTIONS,HEAD,GET,POST'
    response.headers['Access-Control-Allow-Headers'] = 'x-requested-with'

    方法二:安装flask_cors

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值