zoukankan      html  css  js  c++  java
  • javascript原生ajax请求

     1     class Ajax{
     2 
     3         constructor(url, method, data, callback_suc, callback_err, callback_run){
     4             this.RT = true;//默认为异步请求
     5             this.url = url;
     6             this.method = method || "POST";
     7             this.data = data || "";
     8             this.callback_suc = callback_suc || function () {};
     9             this.callback_err = callback_err || function () {};
    10             this.callback_run = callback_run || function () {};
    11             if(!this.url){this.callback_err(); return;}
    12             this.createRequest();
    13         }
    14 
    15         createRequest(){
    16             let xhr = new XMLHttpRequest();
    17             xhr.onreadystatechange = (e)=>{this.run(e);}
    18             xhr.open(this.method, this.url, this.RT);
    19             xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    20             xhr.send(this.data);
    21         }
    22 
    23         run(e){
    24             this.callback_run(e);
    25             if(e.target.readyState !== 4 || e.target.status !== 200){return;}
    26             this.callback_suc(e);
    27         }
    28 
    29     }
    30     //调用:
    31     new Ajax(
    32         "./main.php", //url:请求地址
    33         "POST", //method:请求方法
    34         "data=3&sb=2",//data:传递数据
    35         (e)=>{//callback_suc:请求完成 回调函数
    36             document.write(e.target.responseText);//3
    37         },
    38         (e)=>{},//callback_err:请求错误 回调函数
    39         (e)=>{}//callback_run:请求中 回调函数
    40     )

    上面是js代码

    下面以main.php为例接收请求

    1 <?php
    2     //接收客户端请求数据data和sb
    3     $data = isset($_POST['data']) ? $_POST['data'] : "data为空";
    4     $sb = isset($_POST['sb']) ? $_POST['sb'] : "sb为空";
    5     //向客户端返回数据
    6     echo $data." ".$sb;
    7 ?>
  • 相关阅读:
    莫比乌斯反演
    CDQ 分治
    二分图的最大匹配、完美匹配和匈牙利算法
    网络流简介
    BSGS && EXBSGS
    fhq-treap
    炸鱼w咕咕咕
    路由器配置——静态路由
    路由器配置——静态路由-回环地址测试
    路由器配置——单臂路由实现VLAN间通信
  • 原文地址:https://www.cnblogs.com/weihexinCode/p/12316696.html
Copyright © 2011-2022 走看看