JS:使用Mock.js生成随机数据,拦截 Ajax 请求

简介: JS:使用Mock.js生成随机数据,拦截 Ajax 请求

Mock.js生成随机数据,拦截 Ajax 请求


参考文档:https://github.com/nuysoft/Mock/wiki/Getting-Started


语法规范:https://github.com/nuysoft/Mock/wiki/Syntax-Specification

一、Node.js

安装

npm install mockjs

示例

// 使用 Mock
var Mock = require('mockjs')
/**
 * 
 * 数据模板
 * 属性名|生成规则: 属性值
 */
var data = Mock.mock({
    // 属性 list 的值是一个数组,其中含有 1 到 10 个元素
    'list|1-10': [{
        // 属性 id 是一个自增数,起始值为 1,每次增 1
        'id|+1': 1,
        'name': '@FIRST'
    }]
})
// 输出结果
console.log(JSON.stringify(data, null, 4))

运行结果

{
    "list": [
        {
            "id": 1,
            "name": "Larry"
        },
        {
            "id": 2,
            "name": "Edward"
        },
        {
            "id": 3,
            "name": "Jessica"
        },
        {
            "id": 4,
            "name": "William"
        },
        {
            "id": 5,
            "name": "Christopher"
        },
        {
            "id": 6,
            "name": "Michael"
        },
        {
            "id": 7,
            "name": "Susan"
        },
        {
            "id": 8,
            "name": "Shirley"
        },
        {
            "id": 9,
            "name": "Angela"
        },
        {
            "id": 10,
            "name": "George"
        }
    ]
}

二、浏览器中

使用示例

<script src="https://cdn.bootcdn.net/ajax/libs/Mock.js/1.0.1-beta3/mock-min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/axios/0.21.1/axios.min.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/vue/2.6.12/vue.min.js"></script>
<div id="app">
  <span>{{info.name}}</span>
  <span>{{info.age}}</span>
  <span>{{info.date}}</span>
</div>
<script>
  // 生成数据
  Mock.mock("http://mockjs", {
    name: "@cname", //模拟名称
    "age|1-100": 100, //模拟年龄(1-100)
    date: "@date('yyyy-MM-dd')", //模拟时间
  });
  const app = new Vue({
    el: "#app",
    data: () => {
      return {
        info: {},
      };
    },
    // http请求拦截
    methods: {
      async getData() {
        const res = await axios.get("http://mockjs");
        this.info = res.data;
      },
    },
    created() {
      this.getData();
    },
  });
</script>

更多示例:http://mockjs.com/examples.html

参考

模拟数据----------mock.js----------faker.js

相关文章
|
10月前
|
XML 前端开发 JavaScript
|
6月前
|
Web App开发 数据采集 前端开发
Python + Chrome 爬虫:如何抓取 AJAX 动态加载数据?
Python + Chrome 爬虫:如何抓取 AJAX 动态加载数据?
|
10月前
|
XML 前端开发 JavaScript
PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑
本文深入探讨了PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑;Ajax则通过异步请求实现页面无刷新更新。文中详细介绍了两者的工作原理、数据传输格式选择、具体实现方法及实际应用案例,如实时数据更新、表单验证与提交、动态加载内容等。同时,针对跨域问题、数据安全与性能优化提出了建议。总结指出,PHP与Ajax的结合能显著提升Web应用的效率和用户体验。
222 3
|
9月前
|
JSON 前端开发 JavaScript
Python中如何判断是否为AJAX请求
AJAX请求是Web开发中常见的异步数据交互方式,允许不重新加载页面即与服务器通信。在Python的Django和Flask框架中,判断AJAX请求可通过检查请求头中的`X-Requested-With`字段实现。Django提供`request.is_ajax()`方法,Flask则需手动检查该头部。本文详解这两种框架的实现方法,并附带代码示例,涵盖安全性、兼容性、调试及前端配合等内容,帮助开发者提升Web应用性能与用户体验。
141 0
|
11月前
|
前端开发 JavaScript
回顾前端页面发送ajax请求方式
回顾前端页面发送ajax请求方式
96 18
|
11月前
|
前端开发 JavaScript Java
第6章:Vue中的ajax(包含:回顾发送ajax请求方式、vue-cli脚手架配置代理服务器)
第6章:Vue中的ajax(包含:回顾发送ajax请求方式、vue-cli脚手架配置代理服务器)
202 4
|
XML 前端开发 JavaScript
什么是Ajax和jquery
什么是Ajax和jquery
140 0
|
JSON 前端开发 Java
利用Spring Boot处理JSON数据实战(包括jQuery,html,ajax)附源码 超详细
利用Spring Boot处理JSON数据实战(包括jQuery,html,ajax)附源码 超详细
373 0