初识fetch

借鉴处

1.fetch的出现是为了解决什么问题?

解决古老的XHR不能实现的问题,语法更加简单明了。

fetch()方法提供了一种简单合理的方式来跨网络异步获取资源。

2.fetch是什么?

fetch是新的ajax解决方案。

fetch接受两个参数,第一个是获取资源的URL(必选),第二个是options对象(可选)

options对象下几个常用的属性:

  • method: 请求使用的方法,如 GET、POST。(GET、POST请求的简单区别)
  • headers: 请求的头信息,形式为 Headers 的对象或包含 ByteString 值的对象字面量。
  • body: 请求的 body 信息:可能是一个 Blob、BufferSource、FormData、URLSearchParams 或者 USVString 对象。注意 GET 或 HEAD 方法的请求不能包含 body 信息。
  • mode: 请求的模式,如 cors、 no-cors 或者 same-origin。
    (后面三种属性)
var url = 'http://......';

var headers = {
    Accept: 'image/jpeg'
};

fetch(url, {headers: headers}).then(function () {
  // ...
})

3.fetch和promise有什么关系?

fetch方法本身就会返回一个promise对象,所以它可以使用promise的所有方法,例如.then() .catch()

4.fetch和ajax有什么关系?

fetch是新的ajax解决方案。它相对于ajax来说语义更加简单明了,更能解决ajax所不能解决的一些问题。
以上仅仅只是个人理解,新手上路难免会有错误,做个记录而已

5.fetch的小例子

现在我只想用fetch从api获得数据而已,,,所以就只是写了个很简单的小例子

/*上海天气处可替换成其他东西,使用的是知乎上一个大佬用自己服务器转发的api
,就不用跨域了*/
fetch('http://wang.norma.shop:8080/api.php?key=free&appid=0&msg=上海天气')
//将所得数据转化为json
.then(response=>response.json())
//在控制台打印出已经转化为json的数据
.then(data=>console.log(data))

顺便说一句,引用这个api时,必须要作以下操作才行

<script src="exercise_jquery.js" charset="utf-8"></script>

charset=“utf-8” 这样才能正常运转

6. 简单的聊天机器人

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值