用node.js和mock.js实现mock数据
时间:2022-06-26
本文章向大家介绍用node.js和mock.js实现mock数据,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
“ 这两年,我没等你,也没随便……”
---second year
各位宝宝们,好久不见了,最近我没有安排好时间,so,把自己都给了工作,需要好好学习怎么管理时间~
来到新的公司,除了想念老朋友之外,还会想念曾经的各种好用的工具,其中就有mock数据的工具,这边没有那个工具。so ,自己搭了一个mock工具,小儿科的。
speak is cheap ! show my code!
一. 原理是什么?
使用express.js创建一个服务,根据业务需要,创建响应请求的监听,使用mock.js创建假数据,返回给请求。
二. 用到了什么?
- mock.js
- express.js
三. 目录结构?
四. 具体怎么做?
1. index.js
let express = require('express'); //引入express模块
let Mock = require('mockjs'); //引入mock模块
let app = express(); //创建一个服务
var test1=require("./detail/test1.js"); //引入具体test的配置
var test2=require("./detail/test2.js"); //引入具体test的配置
// 为每个具体的配置创建监听
var dataArr = [test1,test2];
for(let i=0;i<dataArr.length;i++){
let item = dataArr[i];
app.all(item.router, function(req, res) {
res.json(item.data);
});
}
/*为app添加中间件处理跨域请求*/
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS');
res.header("Access-Control-Allow-Headers", "X-Requested-With");
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
});
//监听3000端口
app.listen('3000');
2. test1.js
let Mock = require('mockjs'); //引入mock模块
var test1 = {
router : '/test1.action', // 配置监听的路径
data : Mock.mock({
"status": 200, // 设置返回status
"data|1-9": [{ // 设置返回status
"id|+1": 1,
"value|0-500": 20
}]
})
}
module.exports= test1; // 导出test1
返回数据的具体语法,可查看mock.js官方文档: http://mockjs.com/。
3. package.json增加一句:"start": "node index.js"
{
"name": "mock-demo",
"version": "1.0.0",
"description": "mock.js demo",
"main": "index.js",
"scripts": {
"test": "echo "Error: no test specified" && exit 1",
"start": "node index.js"
},
"keywords": [
"mockjsdemo"
],
"author": "Lin",
"license": "ISC",
"dependencies": {
"express": "^4.17.1",
"mockjs": "^1.0.1-beta3",
"request": "^2.88.0"
}
}
4. 在项目根目录下执行 npm start ;
5. 在浏览器访问:http://localhost:3000/test2.action,如下图:
so ,现在,我们开发的时候就不用造假数据了。也不用等着联调,我们就能调接口了。
愿我们有能力不向生活缴械投降---Lin
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- SQL注入
- CSS实现垂直居中布局
- Js实现链表操作
- 性能优化漫谈(一):无代码调优
- C++职责链模式
- Newbe.Claptrap 框架入门,第四步 —— 利用 Minion,商品下单
- 使用 NextCloud + COS 搭建个人网盘
- Shader基础技巧整理
- 隐秘的物理粒子系统与渲染 !Cocos Creator LiquidFun !
- 一起用Gradle Transform API + ASM完成代码织入呀~
- 掩盖浏览痕迹不会被发现的方法【逗】
- webpack实战——样式预处理
- 前端防止浏览器访问旧版 js 和 css 的优化思路
- 少数派实测报告:AI巨无霸模型GPT-3 | 附送API 调用方法「AI核心算法」
- Qt音视频开发19-海康sdk录像存储