网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 Node.js服务器环境下使用Mock.js拦截AJAX请求的教程
内容
    Mock.js这个JavaScript库最常见的用法便是被用来拦截AJAX请求,well,这里我们就来看一下Node.js服务器环境下使用Mock.js拦截AJAX请求的教程:
    0、Node环境下安装和使用Mock
    # 安装
    npm install mockjs
    // 使用 Mock
    var Mock = require('mockjs')
    var data = Mock.mock({
      // 属性 list 的值是一个数组,其中含有 1 到 10 个元素
      'list|1-10': [{
        // 属性 id 是一个自增数,起始值为 1,每次增 1
        'id|+1': 1
      }]
    })
    // 输出结果
    console.log(JSON.stringify(data, null, 4))
    1、拦截 ajax 请求调用
    方法如下
    Mock.mock( rurl?, rtype?, template|function( options ) )
    方法说明:
    (1)rurl: 可选参数。
    表示需要拦截的 URL,可以是 URL 字符串或 URL 正则。例如 /\/domain\/list\.json/、'/domian/list.json'。
    (2)rtype:可选参数。
     表示需要拦截的 Ajax 请求类型。例如 GET、POST、PUT、DELETE 等。
    (3)template|function:必选参数,只取其中一项。
    (4)template 表示数据模板,可以是对象或字符串。例如 { 'data|1-10':[{}] }、'@EMAIL'。
    (5)function 指向本次请求的 Ajax 选项集,含有 url、type 和 body 三个属性,参见 XMLHttpRequest 规范。
    提示
    从 1.0 开始,Mock.js 通过覆盖和模拟原生 XMLHttpRequest 的行为来拦截 Ajax 请求,不再依赖于第三方 Ajax 工具库(例如 jQuery、Zepto 等)。
    2. 拦截 Ajax 请求超时
    配置拦截 Ajax 请求时的行为。支持的配置项有:timeout。
    (1)Mock.setup( settings )
    (2)settings
    必选。
    配置项集合。
    (3)timeout
    可选。
    指定被拦截的 Ajax 请求的响应时间,单位是毫秒。值可以是正整数,例如 400,表示 400 毫秒 后才会返回响应内容;也可以是横杠 '-' 风格的字符串,例如 '200-600',表示响应时间介于 200 和 600 毫秒之间。默认值是'10-100'。
    3. 本人理解的拦截
    使用同一个方法名,去栏截指定方法。通过 call 修改 this 指向,到达 拦截。
    // 实现原理
    // 定义父类
    var mock_ajax = function(str){
     this.showName=function(){
     console.log(str);
     }
     return this;
    };
    // 定义子类
    var jquery_ajax = function(str){
     this.showName = function(){
     console.log('ajax');
     }
     return this;
    };
    jquery_ajax('').showName();// -> ajax
    // 改变 this 指向
    mock_ajax.call(jquery_ajax,'111');
    // 调用
    jquery_ajax.showName();
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/18 6:44:41