JSONP跨域常用方法
function jsonP({url, params}) {
return new Promise((resolve, reject) => {
window.callback = function(data) {
resolve(data)
document.body.removeChild(script)
}
const arrs = []
for (let key in params) {
arrs.push(`${key}=${params[key]}`)
}
let script = document.createElement('script')
script.src = `${url}?${arrs.join('&')}&cb=callback`
document.body.appendChild(script)
})
}
客户端调用:
jsonP({
url: 'http://localhost:3000/say',
params: {
wd:'hello you'
}
}).then((res) => {
console.log(res)
})