美文网首页
原生ajax中post请求

原生ajax中post请求

作者: 怦然心动_a40c | 来源:发表于2020-11-04 11:47 被阅读0次

一个完整的AJAX请求包括五个步骤:

1.创建XMLHTTPRequest对象

2.使用open方法创建http请求,并设置请求地址

3.设置发送的数据,开始和服务器端交互

4.注册事件

5.获取响应并更新界面

单独封装POST

       ajaxPost(url, data, callback) {
        var xhr = new XMLHttpRequest();
          xhr.open('POST', url, true);
           xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
          xhr.send(data);
           xhr.onreadystatechange = function () {
                if (xhr.readyState == 4 && xhr.status == 200) {
                 callback(xhr.responseText);
               }
            }
         },

// 调用
 
 this.ajaxPost('http://192.168.3.69:9018/manage/product/recordStatus', "", function (data) {
            // 后台返回的数据就是 字符串类型。要转成json,必须自己手动转换。
            console.log(data);
            var user = JSON.parse(data);
            console.log(user);
        });

post和get结合

function ajax_method(url,data,method,success) {
    // 异步对象
    var ajax = new XMLHttpRequest();
    // get 跟post  需要分别写不同的代码
    if (method=='get') {
        // get请求
        if (data) {
            // 如果有值
            url+='?';
            url+=data;
        }else{
        }
        // 设置 方法 以及 url
        ajax.open(method,url);
        // send即可
        ajax.send();
    }else{
        // post请求
        // post请求 url 是不需要改变
        ajax.open(method,url);
        // 需要设置请求报文
        ajax.setRequestHeader("Content-type","application/x-www-form-urlencoded");
        // 判断data send发送数据
        if (data) {
            // 如果有值 从send发送
            ajax.send(data);
        }else{
            // 木有值 直接发送即可
            ajax.send();
        }
    }
    // 注册事件
    ajax.onreadystatechange = function () {
        // 在事件中 获取数据 并修改界面显示
        if (ajax.readyState == 4 && ajax.status == 200) {
            // 将 数据 让 外面可以使用
            // return ajax.responseText;
            // 当 onreadystatechange 调用时说明 数据回来了
            // ajax.responseText;
            // 如果说 外面可以传入一个 function 作为参数 success
            success(ajax.responseText);
        }
    }
}

相关文章

  • 原生ajax中post请求

    一个完整的AJAX请求包括五个步骤: 1.创建XMLHTTPRequest对象 2.使用open方法创建http请...

  • 前端-04-ajax

    1.概述 实际工作中jquery提供的ajax无法满足要求,常自行封装 发送ajax请求-原生 post请求 用户...

  • 实现异步请求的方法

    原生ajax写法: 请求方式:get,post,head,delete,get和post的区别 get将请求的参数...

  • ajax、fetch 跨域携带cookie

    一、ajax 跨域携带cookie 原生ajax请求方式: jquery的post方法请求: 服务器端设置: 二、...

  • Ajax跨域请求COOKIE无法带上的解决办法

    原生ajax请求方式: var xhr = new XMLHttpRequest();xhr.open("POST...

  • 自定义_ajax 两种方式

    一、用原生来写ajax 请求GET 请求POST 二、用ifarme来写 用ajax的时候,整体的请求步骤是1.向...

  • 自己动手封装AJAX

    一、手写AJAX 首先我们先用原生JS手写一个AJAX: 这是一个POST请求的AJAX,可以通过修改 open ...

  • 原生ajax和jquery中的ajax

    原生的ajax请求方法: jquery中的ajax:

  • ajax学习

    1、废话不多说,直接上代码演示:创建基本的ajax的get请求的原生js代码。 创建基本的ajax的post请求的...

  • 链接

    javascript ajax get 请求 post请求 jqery ajax websocket

网友评论

      本文标题:原生ajax中post请求

      本文链接:https://www.haomeiwen.com/subject/cdfgvktx.html