基于 jQuery Ajax 定制本身喜欢的 API

《基于 jQuery Ajax 定制本身喜欢的 API》

你以为 jQuery的 Ajax API 怎样,想不想定制更适合本身的丝滑 API。

这篇文章基于我之前的的一篇 《http.js 在Ajax单页面中的运用》 整顿而来。

你能够扫描文章末端的二维码关注我的关注我的民众号,内容大多会是后端手艺、前端工程、DevOps,偶然会有一些大数据相干,会引荐一些好玩的东西。愿望你会喜好~

编写通例的 AJAX 代码并不轻易,由于差别的浏览器对 AJAX 的完成并不相同。不过 jQuery 已帮助处置惩罚掉了这些兼容,但代码写多了照样以为不爽,由于它不能给我以下的体验:

  1. 更简朴的链式 API;

  2. 页面中的统统要求要附加一些大众参数;

  3. 不能一致处置惩罚效劳返回的自定义毛病;

新的 API

不爱着手的程序员不是好攻城狮。? 因而,我基于 jQuery,从新封装了一层。

这是一个例子

//附加大众参数
$http.global("token","abcd321"); 
$http.use("/api",  (res) =>  {
    if (res.success) {
        return true;
    }
    var err = res.error;
    if (err.code === 1001) {
        location.href = "/login.html";
    } else {
        alert(err.message);
    }
    return false;
});

$http.get("/api/user").type("json")
.param("id", 110) .send( (res) =>  { 
       // 过滤器处置惩罚完才会实行到这一步
       var datum = res.datum;
       alert("Name: " + datum.name);
       console.log(res.datum);
    }, (err) => {
       alert("查询失利了额");
       console.error(err);
     });

这是细致的API申明

设置大众参数;

  • $http.global(key, value);

设置过滤器;

  • $http.use(urlPrefix, option [optinal], callback);

设置要求范例;

  • $http.get(url);

  • $http.getJson(url);

  • $http.post(url);

  • $http.put(url);

  • $http.delete(url);

增添要求参数;

  • $http.param(key, value);

  • $http.params(paramJson);

设置要求头;

  • $http.header(key, value);

  • $http.headers(paramJson);

别的扩大选项;

  • $http.cache(boolean);

  • $http.type("json/xml/html");

  • $http.async(boolean);

  • $http.timeout(number);

发送要求并处置惩罚回调;

  • $http.send(options [optional], successCallback, errorCallback);

Gist 地点

https://gist.github.com/lenbo-ma/0213bfe…

长按二维码,关注我。

内容大多会是后端手艺、前端工程、DevOps,偶然会有一些大数据相干,会引荐一些好玩的东西。愿望你会喜好~

《基于 jQuery Ajax 定制本身喜欢的 API》

统统,源于喜好。

    原文作者:马隆博
    原文地址: https://segmentfault.com/a/1190000004915383
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞