ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# Express ## 简介 Express框架是目前最稳定、使用最广泛,而且 Node.js 官方推荐的唯一一个 Web 开发框架。除了为 http 模块提供了更高层的接口外,还实现了许多功能。 功能: 静态文件服务 路由控制 模板解析支持 动态视图 用户会话 CSRF保护 错误控制器 访问日志 缓存 插件支持 ***** # RESTful 约束后端人员在设计API 接口(动态资源)的一种风格 ## 简介 **表现层状态转换**(Representational State Transfer,缩写:REST)表现层状态转换是根基于超文本传输协议(HTTP)之上而确定的一组约束和属性,是一种设计提供万维网络服务的软件构建风格。   匹配或兼容于这种架构风格(简称为 REST 或 RESTful)的网络服务,允许客户端发出以统一资源标识符访问和操作网络资源的请求,而与预先定义好的无状态操作集一致化。因此表现层状态转换提供了在互联网络的计算系统之间,彼此资源可交互使用的协作性质。 ***** # AJAX ## 简介 AJAX 即 “Asynchronous JavaScript and XML”(异步的 JavaScript 与 XML 技术),**指的是一套综合了多项技术的浏览器端网页开发技术。**可以由浏览器实现,使用 JavaScript 代码发送网络请求。 **AJAX 应用可以仅向服务器发送并取回必须的数据,并在客户端采用 JavaScript 处理来自服务器的回应。** ## 特点 **异步请求,局部刷新** **同步**:是指发送方发出数据后,等接收方发会响应以后才发下一个数据包的通讯方式 **异步**:是指发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。局部刷新指刷新页面部分内容。 ## 优缺点 优点:Web 应用程序更为迅捷地回应用户动作,并避免了在网络上发送没有改变的信息,减轻服务器压力 缺点:浏览器实现之间有差异处理兼容性问题;不能回退和前进;默认不支持跨域访问 。 ***** # AJAX 2.0 2008 年 W3C 退出 AJAX 2.0,其中提供三个新特性(注意 IE 老版本浏览器是不兼容的): 1. FormData 2. 请求超时 3. 进度监听 ## FormData API **用于模拟或者是获取表单数据及异步文件上传。** >[success] **set**:设置键值对,若指定的 key 已经存在那么会覆盖; > **get**:根据 key 来回去对应的 value (第一个); > **getAl**l:根据 key 来获取所有 value; > **has**:检查是否存在指定的键值对; > **append**:设置键值对,若指定的 key 已经存在,会在后面添加一个新的值,此时 key 的值是一个数组。 > **delete**:删除键值对; > **forEach**:遍历; > **keys**:获取所有的 key 迭代器; > **values**:获取所有 value 迭代器; > **entries**:获取所有键值对迭代器 ### 用途 #### 使用 FormData 处理请求参数 #### 使用 FormData 文件上传 #### 文件上传度 #### 请求超时 ***** # jQuery AJAX 的 API ![](https://img.kancloud.cn/e1/8d/e18d01e3f8a9aa42f4d0214253ed5724_988x364.png) ***** # jQuery 中 ajax 方法使用 * 使用 jQuery 发送 GET 方式 AJAX 请求 * 使用 jQuery 发送POST 方式 AJAX 请求 * 使用 jQuery 发送 PUT方式 AJAX 请求 * 使用 jQuery 发送 DELETE方式 AJAX 请求 ## jQuery 中 load 方法使用 ## 全局 AJAX 事件处理器 ## jQuery 中 表单序列化 ***** # Promise ## 简介 Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。 它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了 Promise 对象。 一个 Promise 对象 有以下几种状态: * pending: 初始状态,既不是成功,也不是失败状态。 * fulfilled: 意味着操作成功完成。 * rejected: 意味着操作失败。 ![](https://box.kancloud.cn/835119a5c72db92a1ae89730a7af1251_801x297.png) ## 基本用法 1. 构造实例 2. 调用 then() 3. 调用 catch() 4. 传入参数 ***** # Axios Axios\[艾克丝伊欧姿\] 是一个基于 promise 的 HTTP 库,可以用在浏览器和 Node.js 中。其有以下特性: * 在 浏览器中创建 XMLHttpRequests * 在 Node.js 创建 http 请求 * 支持 Promise API * 拦截请求和响应 * 转换请求数据和响应数据 * 取消请求 * 自动转换 JSON 数据 * 客户端支持防御 XSRF 浏览器支持情况,参见\[[https://github.com/axios/axios](https://github.com/axios/axios)\]。 ### 安装入门使用 * 发送 GET 请求 * 发送 POST请求 * 发送 PUT请求 * 发送 DELETE请求