0.1.3 • Published 8 years ago
cy-jsonp v0.1.3
jsonp-implementation
cy-jsonp 实现了一个简易的 jsonp 库
安装
使用 npm
$ npm install cy-jsonp --save之后在您的项目中导入模块
import jsonp from 'cy-jsonp'
// or
// const jsonp = require('cy-jsonp')或在浏览器直接引入 dist/jsonp.js
<script src="xxxx/dist/jsonp.js"></script>API
jsonp(url [, data ,opts ,cb])
jsonp 函数将返回一个 promise 实例
url: {string} 请求地址data: {object} 可选,请求需要传递的参数,将被转换为queryStringopts: {object} 可选,配置项param: {string} 指定回调函数名的键(字段名),默认为"callback"prefix: {string} 指定自动生成的回调函数名前缀,默认为"jsonp"name: {string} 指定回调函数名(作为 param 的值),默认为prefix + count(count 为内部计数器)timeout: {number} 设置请求超时毫秒数,默认为60000,当为0时不设置超时
cb(err, data): 可选,请求成功或超时后执行的回调。该函数将在resolve(data)/reject(err)之前被调用
示例
jsonp 函数中 第2、3、4个参数都是可以省略的,也可以在第2或第3个参数中传递回调函数
1.使用 promise 的 then/catch 来接收响应
jsonp('http://jsfiddle.net/echo/jsonp', {
pageNo: 1,
pageSize: 10,
keyword: 'heihei'
}).then(data => {
// TODO
}).catch(err => {
// TODO
})2.使用回调函数来接收响应
jsonp('http://jsfiddle.net/echo/jsonp',
{
pageNo: 1,
pageSize: 10,
keyword: 'heihei'
},
function (err, data) {
if(err){
// TODO
return
}
// TODO
}
)