热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

http.js在Ajax单页面中的运用

关于作者马隆博(LenboMa),Java,JavascriptBlog:http:mlongbo.comE-Mail:mlongbo@gmail.com文章编写于:2014081

关于作者

  • 马隆博(Lenbo Ma),Java,Javascript

  • Blog: http://mlongbo.com

  • E-Mail: mlongbo@gmail.com

  • 文章编写于: 2014/08/10

转载请说明出处:

http://mlongbo.com/http-js-zai-ajaxdan-y…

要处置惩罚的题目

  1. 简化api运用;

  2. 为页面中Ajax要求设置全局阻拦器;

  3. 页面中所有Ajax要求向服务器发送全局参数;

完成

简化API

我个人喜好链式挪用,以及简单明了的API设想。因而,我主要在以下几个部份做了简化:

  1. 为每种要求范例增添一个函数。如: $http.get(); $http.post(); $http.del(); $http.put();

  2. 能够动态设置要求参数;

    • req.push(key,val); or req.push(jsonObj); //设置要求参数, 可同时增添一个或多个参数

    • req.data(jsonObj); //会掩盖push函数设置过的值

    • req.header(key,val); or req.header(jsonObj); //要求头, 可同时增一个或多个

    • req.headers(jsonObj); //会掩盖header函数设置过的值

  3. 一样, 其他的功用也能够拆分红自力函数来设置, 比方:

    • req.type(typeStr); //设置相应数据范例

    • req.cache(boolean); //是不是缓存

总之,你完全能够根据你本身最喜欢的体式格局定制API。

阻拦器完成

之所以会有阻拦器的需求,是因为我之前所做的一个运用的数据相应花样以下:

{
code: 1,
message: '相应信息'
}

个中code值会有如许几种值:

  • 0 failed

  • 1 success

  • 2 session timeout

因而我须要一致处置惩罚会话逾期状况,比方关照用户从新登录等。

我运用req.interceptor(type,func(res){}); 来增添一个阻拦器。当服务器相应数据时,将先挪用设置的全局阻拦器,以后再去挪用营业相干的回调函数。假如我http.js去服务器猎取html模板代码时,即相应的数据范例是text/html,而不是application/json,这时候再去做阻拦就不好玩了。因而,我用了一个type参数来给interceptor分组。

发送全局参数

我做单页面运用时,会有如许一个情形:

当用户登录后,服务器会返回一个token值,以后的大部份api要求都须要通报这个token参数。因而,假如在每次ajax要求时都手动增添一个token参数值,就觉得有些效力低下。一样,你的同事们能够也会碰到和你一样的状况,这时候还要一个个通知他们怎样设置token参数就很不好玩儿了。

因而,我在http.js中增添$http.global(key,val); or $http.global(jsonObj);如许一个函数来处置惩罚上面的题目。

结语

至于基于什么ajax库来封装,你能够运用原生ajax,jquery ajax,或许其他你喜好的ajax library。同时,迎接种种议论 ^_^

这是我写的http.js代码片断,不太周全,或许可供你参考。

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

《http.js 在Ajax单页面中的运用》


推荐阅读
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 解决Sharepoint 2013运行状况分析出现的“一个或多个服务器未响应”问题的方法
    本文介绍了解决Sharepoint 2013运行状况分析中出现的“一个或多个服务器未响应”问题的方法。对于有高要求的客户来说,系统检测问题的存在是不可接受的。文章详细描述了解决该问题的步骤,包括删除服务器、处理分布式缓存留下的记录以及使用代码等方法。同时还提供了相关关键词和错误提示信息,以帮助读者更好地理解和解决该问题。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了闭包的定义和运转机制,重点解释了闭包如何能够接触外部函数的作用域中的变量。通过词法作用域的查找规则,闭包可以访问外部函数的作用域。同时还提到了闭包的作用和影响。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • 本文介绍了操作系统的定义和功能,包括操作系统的本质、用户界面以及系统调用的分类。同时还介绍了进程和线程的区别,包括进程和线程的定义和作用。 ... [详细]
  • GreenDAO快速入门
    前言之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的 ... [详细]
  • 本文介绍了OkHttp3的基本使用和特性,包括支持HTTP/2、连接池、GZIP压缩、缓存等功能。同时还提到了OkHttp3的适用平台和源码阅读计划。文章还介绍了OkHttp3的请求/响应API的设计和使用方式,包括阻塞式的同步请求和带回调的异步请求。 ... [详细]
  • 本文介绍了在Android开发中使用软引用和弱引用的应用。如果一个对象只具有软引用,那么只有在内存不够的情况下才会被回收,可以用来实现内存敏感的高速缓存;而如果一个对象只具有弱引用,不管内存是否足够,都会被垃圾回收器回收。软引用和弱引用还可以与引用队列联合使用,当被引用的对象被回收时,会将引用加入到关联的引用队列中。软引用和弱引用的根本区别在于生命周期的长短,弱引用的对象可能随时被回收,而软引用的对象只有在内存不够时才会被回收。 ... [详细]
  • 网卡工作原理及网络知识分享
    本文介绍了网卡的工作原理,包括CSMA/CD、ARP欺骗等网络知识。网卡是负责整台计算机的网络通信,没有它,计算机将成为信息孤岛。文章通过一个对话的形式,生动形象地讲述了网卡的工作原理,并介绍了集线器Hub时代的网络构成。对于想学习网络知识的读者来说,本文是一篇不错的参考资料。 ... [详细]
author-avatar
关于快乐的秘密_473
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有