所属分类:web前端开发
es6中,fetch用于发起远程资源的请求,是提供跨网络异步获取资源的方法;该方法被定义在BOM的window对象中,返回一个Promise对象,语法“fetch(url,配置对象).then(function(response){})”。
前端(vue)入门到精通课程:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用
本教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑。
fetch的基本语法
fetch(url,init).then(function(response) { } )
登录后复制
es6 fetch怎么使用?JavaScript
fetch的参数说明
fetch接收两个参数,第一个为地址且必填,第二个为配置对象可选。
如果是简单的无参数get请求,那么可以不要第二个参数(默认为get请求),当然也可以加上来对此fetch进行一些说明
第二个参数包含请求类型,发送数据,headers,模式等
fetch方法返回的也是一个promise对象,我们只能使用then来获取返回数据,
我们需要两次then才能对后台返回得到数据进行处理,在第一个then里面return result.text(), 或者 return result.json(), 然后第二个参数里面才能真正的获取到返回的具体值,并且对其进行逻辑处理
如果要判断请求是否失败,那么请在第一次的then里面判断,那里面为请求数据对象。
Fetch API提供了一个 JavaScript接口,用于访问和操纵HTTP管道的部分,例如请求和响应。它还提供了一个全局 fetch()方法,该方法提供了一种简单,合理的方式来跨网络异步获取资源。
这种功能以前是使用 XMLHttpRequest实现的。Fetch提供了一个更好的替代方法,可以很容易地被其他技术使用,例如 Service Workers。Fetch还提供了单个逻辑位置来定义其他HTTP相关概念,例如CORS和HTTP的扩展。
Fetch API提供了一个fetch()方法,它被定义在BOM的window对象中,你可以用它来发起对远程资源的请求。 该方法返回的是一个Promise对象,让你能够对请求的返回结果进行检索。
fetch只支持跨域CORS 不支持JSONP跨越
<script>
//fetch发送数据
//支持CORS跨域,没有办法接受jsonp数据
function getData() {
//支持 cors跨域url地址'http://api.yytianqi.com/air?city=CH010100&key=2c5br4sgmguremgg'
//https://api.douban.com/v2/book/1220562?callback=func
return fetch('http://localhost:3001/getdata')
.then(function (response) {
console.log(response);
//promise对象返回
return response.json();
})
}
getData().then(function (data) {
console.log(data);
})
</script>
登录后复制
【相关推荐:javascript视频教程、web前端】
以上就是es6中fetch的用法是什么的详细内容,更多请关注zzsucai.com其它相关文章!