前端模拟(mock)接口数据(koa)
在前后端分离开发项目时,经常会有前后端进度不一致,可能前端界面开发已经完成,就等接口了,如果等接口出来再联调的话时间可能会来不及。
这个时候,前端就可以根据制定好的接口规范和接口文档来mock接口数据,这样等后端接口开发完成之后也不至于太匆忙。
Koa 是一个由 Express 幕后的原班人马打造的 web 框架。这里用它来mock数据、
1. 安装koa
npm install koa koa-router koa-body --save-dev // 只在开发的时候用所以是--save-dev
2. 在项目目录下新建mock文件夹,文件夹下新建server.js
const Koa = require('koa');
const router = require('koa-router')();
const koaBody = require('koa-body')();
const app = new Koa(); // log request URL:
app.use(async (ctx, next) => {
console.log(`Process ${ctx.request.method} ${ctx.request.url}...`);
await next();
}); router.get('/', async (ctx, next) => {
ctx.response.body = {
a:1,
b:'123'
}
}); router.get('/api/employees', async (ctx, next) => {
ctx.response.body = {
status:true,
data:[
{id:'N001',name:'张珊',phonenumber:'13912341000',birth:'1998-01-08'},
{id:'N002',name:'李珊',phonenumber:'13912342000',birth:'1998-01-08'},
{id:'N003',name:'旺珊',phonenumber:'13912343000',birth:'1998-01-08'},
],
msg:'获取数据成功'
}
}); router.post('/api/login',koaBody, async(ctx,next)=>{
var
username = ctx.request.body.username || '',
password = ctx.request.body.password || '';
console.log(`signin with username: ${username}, password: ${password}`);
if (username === 'admin' && password === '123456') {
ctx.response.body = {
status:true,
data:null,
mag:'登录成功'
}
} else {
ctx.response.body = {
status:false,
data:null,
mag:'用户名或密码错误'
}
}
}) // add router middleware:
app.use(router.routes()); app.listen(3000);
console.log('app started at port 3000...');
3. 运行--进到mock目录下 node server.js 或在package.json中配置 mock项然后在项目目录运行npm run mock
"scripts": {
"start": "set NODE_ENV=dev&&webpack-dev-server --progress --mode=development --colors",
"build": "rd/s/q build && set NODE_ENV=production webpack --config ./webpack.production.config.js --progress --colors --mode=production",
"mock": "node ./mock/server.js"
},
打开http://localhost:3000,可以看到get接口输出的数据
前端模拟(mock)接口数据(koa)的更多相关文章
- Mock接口数据 = mock服务 + iptable配置
一.mock接口数据应用场景: 1.测试接口A,A接口代码中调用其他服务的B接口,由于开发排期.测试环境不通等原因,依赖接口不可用 2.测试异常情况,依赖接口B返回的数据格式不对.返回None.超时等 ...
- Mock(模拟后端接口数据)配合Vuex的使用
1.下载Mock cnpm install Mockjs -S 2.新建一个data.js存放新生成的mock文件 编辑mock 并导出 const Mock = require('mockjs' ...
- 【小程序】模拟数据支持(mockjs配置模拟服务器接口数据)
utils目录 ①下载mockjs(地址)放置utils目录中 ②新建api.js :配置模拟数据以及后台接口,通过DEBUG=ture; //切换数据接口 配置如下: let API_HOST = ...
- 前端模拟后台返回数据之Mockjs
一.官方文档: https://github.com/nuysoft/Mock/wiki/Syntax-Specification 例子:http://mockjs.com/examples.html ...
- vue-cli搭建项目模拟后台接口数据,webpack-dev-conf.js文件配置
webpack.dev.conf.js 首先第一步 const express = require('express');const app = express();var appData = req ...
- 前端使用Mock服务Json-server
前言 由于Jaguar服务目前还没有任何的API输出,一边写前端功能,一边写后端API显然不利于整体的项目进展.所以我计划先定义好接口,然后将所有的API都先部署在一个Mock服务器上,等前端界面和功 ...
- 【Mock.js】前端模拟假数据,不用在手拼了
[Mock.js]前端模拟假数据,不用在手拼了:https://www.jianshu.com/p/8579b703a4c1
- vue mock 模拟接口数据
日常总结 希望能帮到大家 1 mock/sever.js //创建服务 let http=require('http') let fs=require('fs') let url=require(' ...
- 前后端分离之让前端开发脱离接口束缚(mock)
情景: 领导:小吴啊,最近在忙什么啊? 前吴:(心想:我擦勒,难道划水被领导发现了?也不能怪我啊,后台的哥们接口还没给呢,但要是实话实说不就对不起后台哥们了吗?) ...
随机推荐
- Spring 依赖注入(DI)的注解
Spring中想要使用注解进行依赖注入,需要进行如下配置: <beans xmlns="http://www.springframework.org/schema/beans" ...
- 一种是CI(Constructor Injection)构造方法注入,另一种是SI(Set Injection) set 注入
一:这里先说一下DI(Dependency Injection)依赖注入有种表现形式:一种是CI(Constructor Injection)构造方法注入,另一种是SI(Set Injection) ...
- e1087. try/catch语句
The try/catch statement encloses some code and is used to handle errors and exceptions that might oc ...
- 使用 const 提高函数的健壮性
使用 const 提高函数的健壮性 看到 const 关键字,C++程序员首先想到的可能是 const 常量.这可不是良好的条件 反射.如果只知道用 const 定义常量,那么相当于把火药仅用于制作 ...
- free 和delete 把指针怎么啦?
别看 free 和 delete 的名字恶狠狠的(尤其是 delete),它们只是把指针所指的内存给 释放掉,但并没有把指针本身干掉. 发现指针 p 被 free 以后其地址仍然不变(非 NULL), ...
- css -- 通俗理解inline、block、inline-block
display:inline; 内联元素,简单来说就是在同一行显示. display:block; 块级元素,简单来说就是就是有换行,会换到第二行. display:inline-block; 就是在 ...
- Linux(Ubuntu)下搭建ASP.NET Core环境
今天来学习一下ASP.NET Core 运行在Ubuntu中.无需安装mono . 环境 Ubuntu 14.04.4 LTS 服务器版 全新安装系统. 下载地址:http://mirrors.neu ...
- hadoop基础学习---基本概念
1.组成部分HDFS和MapReduce 2.HDFS这几架构
- Unity3d导出安卓版本
1. 要想导出安卓版,就必须要安装安卓 SDK,这个可以去这里下载. http://developer.android.com/sdk/index.html. 当我们打开后就是看见这个了. 2.当我 ...
- SQLServer------Sql Server性能优化辅助指标SET STATISTICS TIME ON和SET STATISTICS IO ON
转载: http://www.cnblogs.com/xqhppt/p/4041799.html