前言
昨天写了一篇关于JSONP请求的博客,简述了JSONP的相关概念以及使用,关于昨天博客的连接
今天的分享的东西算是对昨天的一种补充,让大家通过代码更为形象的了解JSONP请求
思路
图示:
关键点:
- 每次请求完成之后,必须清空产生的多余无用的方法和标签
- 包装成promise对象,使用起来就像axios一样
- 自动生成接收函数,无需用户考虑,我们要做的是把值传递回去
代码实现
话不多说,先上代码
function myJsonp(options) {
return new Promise((resolve, reject) => {
if (!window.jsonpNum) {
//判断是否是第一次jsonp请求
window.jsonpNum = 1
} else {
window.jsonpNum++
}
let {
url,
data,
timeout = 5000,