fetch polyfill 发布0.02版

avalon官方AJAX库fetch polyfill 发布0.02版,修复众多BUG。

https://github.com/RubyLouvre...

用法示例


avalon.fetch('/getAjax?aaa=1&&bb=2',{
    method: 'GET'
}).then(function(a){
    return a.json()
}).then(function(a){
    console.log(a)
})

avalon.fetch('/postAJax', {
    method: 'POST',
    headers: {
        'Accept': 'application/json',
        'Content-Type': 'application/json',
    },
    body: JSON.stringify({
        firstParam: 'yourValue',
        secondParam: 'yourOtherValue',
    })
}).then(function(a){
    return a.json()
}).then(function(a){
    console.log(a)
})

function toQueryString(obj) {
    return obj ? Object.keys(obj).sort().map(function (key) {
        var val = obj[key];
        if (Array.isArray(val)) {
            return val.sort().map(function (val2) {
                return encodeURIComponent(key) + '=' + encodeURIComponent(val2);
            }).join('&');
        }

        return encodeURIComponent(key) + '=' + encodeURIComponent(val);
    }).join('&') : '';
}
avalon.fetch('/postAJax', {
    method: 'post',
    headers: {
        'Accept': 'application/json, text/plain, */*',
        'Content-Type': 'x-www-form-urlencoded'
    },
    body: toQueryString({ 
        'name': 'aaa',
        'pw':'bbb' 
    })
}).then(function(a){
    return a.json()
}).then(function(a){
    console.log(a)
}) 

安装fetch 库

$ npm install fetch-polyfill2 --save
$ npm install bluebird -- save
$ npm install json3 -- save

运行例子

跑到koa目录下

npm install
node index

浏览器下打开localhost: 4000

阅读 2.1k

推荐阅读
javascript魔法师
用户专栏

涉及我的学习心得与经验

1304 人关注
70 篇文章
专栏主页