ajax与fetch的用法

// 传统ajax用法
var xhr = new XMLHttpRequest();
xhr.responseType = ‘json‘;
xhr.timeout = 2000;
console.log(xhr.readyState);//0
xhr.open(‘GET‘, url);
console.log(xhr.readyState);//1
xhr.onloadstart = function (e) {
    xhr.abort();
    console.log(e);
};
xhr.onprogress = function (e) {
    console.log(xhr.readyState);//3
    console.log(e);
};
xhr.onload = function(res) {
    console.log(res);
    console.log(xhr.readyState);//4
};
xhr.onerror = function(err) {
    console.log(err);
};
xhr.ontimeout = function (e) {
    console.log(e);
};
xhr.onabort = function(e){
    console.log(e);
};
xhr.onloaded = function(e){
    console.log(e);
};
xhr.send();

// 传统ajax用法
function req(url, data, callback) {
    var xhr = new XMLHttpRequest();
    xhr.open(‘POST‘, url);
    xhr.onreadystatechange = function() {
        if (xhr.readyState == 4 && xhr.status == 200) {
            var res = JSON.parse(request.responseText);
            callback(res);
        }
    };
    // post
    xhr.setRequestHeader(‘Content-Type‘, ‘application/x-www-form-urlencoded‘);
    xhr.send(data);
    // get
    xhr.setRequestHeader("Content-Type", "text/xml;charset=utf-8");
    xhr.send(null);
}
req(url, data, callback());

// 替代ajax的fetch
fetch(‘/users.json‘, {
    method: ‘POST‘,
    body: data,
    mode: ‘cors‘,
    redirect: ‘follow‘,
    headers: new Headers({
        ‘Content-Type‘: ‘text/plain‘
    })
}).then(function(res) {
    console.log(res);
}).then(function(res) {
    console.log(res);
}).catch(function (err) {
    console.log(err);
});

// 使用async,await的fetch
async function req(url, data) {
    try {
        let response = await fetch(url, data);
        let data = await response.json();
        console.log(data);
    }
    catch (err) {
        console.log(err);
    }
}
req(‘https://www.baidu.com‘, data);

  

原文地址:https://www.cnblogs.com/huangtonghui/p/8311476.html

时间: 2024-07-31 14:45:53

ajax与fetch的用法的相关文章

关于Jquery中ajax方法data参数用法的总结

jquery手册描述: data 发送到服务器的数据.将自动转换为请求字符串格式.GET 请求中将附加在 URL 后.查看 processData 选项说明以禁止此自动转换.必须为 Key/Value 格式.如果为数组,jQuery 将自动为不同值对应同一个名称.如 {foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'. 示例: $.ajax({    type: "POST",    u

Jquery ajax, Axios, Fetch区别

1.   Jquery ajax, Axios, Fetch区别之我见 2.   ajax.axios.fetch之间的详细区别以及优缺点 原文地址:https://www.cnblogs.com/kongge/p/10395235.html

$.ajax,axios,fetch三种ajax请求的区别

Ajax是常用的一门与Web服务器通信的技术,目前发送Ajax请求的主要有4种方式: 原生XHR jquery中的$.ajax() axios fetch 至于原生的XHR目前工作中已经很少去手写它了,前些年我们比较常用的是jquery的ajax请求,但是近些年前端发展很快,jquery包装的ajax已经失去了往日的光辉,取而代之的是新出现的axios和fetch,两者都开始抢占“请求”这个前端重要领域.本文结合自己的使用经历总结一下它们之间的一些区别,并给出一些自己的理解. 1.Jquery

Ajax框架---dwr的用法

通常使用Ajax时用的都是jQuery框架,现在公司的框架里用的都是dwr.我觉得dwr和jQuery中的ajax用法差不多,看起来也很像. 一.简介 百度百科上对dwr的描述: DWR采取了一个类似AJAX的新方法来动态生成基于JAVA类的JavaScript代码.这样WEB开发人员就可以在JavaScript里使用Java代码,就像它们是浏览器的本地代码(客户端代码)一样:但是Java代码运行在WEB服务器端而且可以自由访问WEB 服务器的资源.出于安全的理由,WEB开发者必须适当地配置哪些

react——获取数据的4种方法ajax()、$.ajax()、fetch()、axios

第一种:ajax() import React from 'react'; import ReactDom from 'react-dom'; import ajax from './tool.js'; class Nav extends React.Component{ constructor(){ super(); this.state = { arr: {} }; this.get = this.get.bind(this); } get(){ ajax('./data/data.json

fetch()的用法

发起获取资源请求的我们一般都会用AJAX技术,最近在学习微信小程序的时候,用到了fetch()方法. fetch()方法用于发起获取资源的请求.它返回一个promise,这个promise会在请求响应之后被resolve,并传回Response对象,基本上在任何场景下只要你想获取资源,都可以使用fetch()方法,但是现在存在兼容性的问题,查看兼容性:http://caniuse.com/#search=fetch() 当遇到网络错误是,fetch()返回的promise会被reject(阻止)

[转] 学会fetch的用法

fetch是web提供的一个可以获取异步资源的api,目前还没有被所有浏览器支持,它提供的api返回的是Promise对象,所以你在了解这个api前首先得了解Promise的用法.参考阮老师的文章 那我们首先讲讲在没有fetch的时候,我们是如何获取异步资源的: //发送一个get请求是这样的: //首先实例化一个XMLHttpRequest对象 var httpRequest = new XMLHttpRequest(); //注册httpRequest.readyState改变时会回调的函数

fetch的用法

1.重构公司的后台项目,偶然间在git上看见别人的项目中用到fetch,查了下才知道是ES6的新特性,和ajax的功能相似,都是实现请求,但是多少有些兼容性问题. (1)fetch和XMLHttpRequest fetch就是XMLHttpRequest的一种替代方案,除了XMLHttpRequest对象来获取后台的数据之外,还可以使用一种更优的解决方案fetch. (2)如何获取fetch https://developer.mozilla.org/zh-CN/docs/Web/API/Fet

git clone, push, pull, fetch 的用法

Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Git远程操作. git clone git remote git fetch git pull git push 本文针对初级用户,从最简单的讲起,但是需要读者对Git的基本用法有所了解.同时,本文覆盖了上面5个命令的几乎所有的常用用法,所以对于熟练用户也有参考价值. git 一.git clone