前后端分离--构建前端Mock Server--windows部署rap

摘要:
这就是为前端提供一个可在本地使用的web容器。这是mockserver。mockserver可以解决哪些问题?官方网站有部署手册。我在这里部署到Windows环境。切换到Redis目录并运行Redis-cli.exe-h127.0.0.1-p6379。设置键值对setmyKeyabc并获取键值对getmyKey,这表示Redis安装成功。步骤5:启动tomcat和Redis。浏览器输入:localhost:8080表示部署成功。

mock:模拟的,虚假的

mock server:模拟服务,模拟请求,模拟虚假数据

为了前后端更好的分工,接口文档是必须的,前后端都根据接口文档写代码,然后对接接口就行了。

但是,后端跟不上前端节奏,接口跟不上来怎么办?即便接口跟上来了,大后端数据跟不上又怎么办?

第一种想到的方法就是模拟返回数据,根据接口文档定义好的返回数据格式,新建一个json文件夹,里面放一堆*.json文件,像这样:

前后端分离--构建前端Mock Server--windows部署rap第1张

然后请求json数据,像这样:

前后端分离--构建前端Mock Server--windows部署rap第2张

所以为了前端有数据,就会有很多很多的请求json文件。当后端接口上来后,又要一个一个挨着去把json请求改为真实接口名,这就要求代码需要写的比较规范,不然接口的对接真的很难受,而且在修改某些复杂逻辑的地方的时候还必须的小心翼翼,不然就只有等测试发来bug单了。

造json文件模拟请求对于小的项目确实还是挺方便的,但是项目大了呢,上百个接口甚至更多呢?

一堆一堆的json看着都烦,还不说前后端对接了。

那么要怎么才能解决前后分离,节约时间,提高开发效率,减少前端对后端的依赖呢?

那就是为前端提供一个可以在本地用的web容器,这个就是 mock server。

mock server 能解决哪些问题呢?

1、接口文档的编写

2、根据接口拦截请求,返回接口需要返回的结果数据

3、方便线上线下的切换

我这里要用做mockserver的就是rap了,rap结合了团队管理,项目管理,文档编写、Mock.js、可视化、接口过渡、文档历史版本(赞)、mock插件(线上线下切换就只需要注释一句代码就OK),支持本地部署。

那么怎么将rap部署到本地呢?官网有部署手册。

我这里是部署到windows环境下的。

部署方式有两种:

1、使用编译好的war包部署(适合仅想部署RAP服务,不需开发定制功能的同学)

2、使用源码自行编译、开发后部署(需配置J2EE开发环境, 适合想要研究RAP源代码,开发定制功能的同学)

我不需要自行开发就采用war包部署。

需要环境:jdk,tomcat,MySQL,Redis 

第一步:在官网https://github.com/thx/RAP/releases将最新的war包下下来,然后改名为ROOT.war,放到tomcat下面的webapps里面

前后端分离--构建前端Mock Server--windows部署rap第3张

第二步:启动tomcat,该war包自动部署到文件夹ROOT

前后端分离--构建前端Mock Server--windows部署rap第4张

前后端分离--构建前端Mock Server--windows部署rap第5张

第三步:修改数据库配置文件,打开ROOT中得WEB-INF/classes/config.properties

前后端分离--构建前端Mock Server--windows部署rap第6张

前后端分离--构建前端Mock Server--windows部署rap第7张

修改jdbc.username=您的数据库用户名

修改jdbc.password=您的数据库密码

redis的端口号默认

第四步:安装redis

http://www.redis.net.cn/tutorial/3503.html下载redis-2.45

前后端分离--构建前端Mock Server--windows部署rap第8张

根据自己实际情况选择,将64bit的内容cp到自定义盘符安装目录取名redis。 如 G:dev

前后端分离--构建前端Mock Server--windows部署rap第9张

前后端分离--构建前端Mock Server--windows部署rap第10张

打开一个cmd窗口 使用cd命令切换目录到 C: edis 运行 redis-server.exe redis.conf 。

如果想方便的话,可以把redis的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个redis.conf可以省略,如果省略,会启用默认的。输入之后,会显示如下界面:

前后端分离--构建前端Mock Server--windows部署rap第11张

这时候另启一个cmd窗口,原来的不要关闭,不然就无法访问服务端了。

切换到redis目录下运行 redis-cli.exe -h 127.0.0.1 -p 6379 。

设置键值对 set myKey abc

取出键值对 get myKey

前后端分离--构建前端Mock Server--windows部署rap第12张

这就说明redis安装成功了。

第五步:开启tomcat和redis,浏览器输入:localhost:8080

前后端分离--构建前端Mock Server--windows部署rap第13张

说明部署成功了。rap的默认用户是admin,密码通过双重md5加密了的,但是不是正常的加密 ……

所以要想登录admin,还得先注册一个用户,比如密码设置为123456,打开MySQL

前后端分离--构建前端Mock Server--windows部署rap第14张

将新注册的dothin的密码复制到admin里面去,然后admin就能登录了

具体怎么使用rap,自行看rap教程

免责声明:文章转载自《前后端分离--构建前端Mock Server--windows部署rap》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇php集成环境安卓手机tcpdump的使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

thinkphp3.2配置redis缓存和文件缓存

如果把一些常用但又不容易变的数据存缓存,而不是每次查数据库,这样能很大减轻数据库压力 最近由于项目需要,就尝试了一把redis,但是后面又用了tp3.2的文件缓存,直接进入主题: 在config.php中增加如下代码: 'DATA_CACHE_PREFIX' => 'tp',//缓存前缀 'DATA_CACHE_TYPE'=>...

redis内存满了怎么办?

redis最为缓存数据库,一般用于存储缓存数据,用于缓解数据库压力,但是缓存太多,内存满了怎么办呢。一般有以下几种方法一、增加内存 redis存储于内存中,数据太多,占用太多内存,那么增加内存就是最直接的方法,但是这个方法一般不采用,因为内存满了就加内存,满了就加,那代价也太大,相当于用钱解决问题,不首先考虑,一般所有方面都做到最优化,才考虑此方法 二、搭...

SpringMVC类型转换、数据绑定

SpringMVC类型转换、数据绑定详解[附带源码分析] 目录 前言 属性编辑器介绍 重要接口和类介绍 部分类和接口测试 源码分析 编写自定义的属性编辑器 总结 参考资料 前言 SpringMVC是目前主流的Web MVC框架之一。  如果有同学对它不熟悉,那么请参考它的入门blog:http://www.cnblogs.com/fangjian0...

C#基础知识

C#基础 1、面向对象、面向接口、面向方向编程的区别: 面向对象:强调对具有相同行为和属性事物的封装,更注重封装的完整性和功能的完整性 面向接口:定义要实现某类功能要实现的统一规范,而具体实现过程由实现该接口的类型决定 面向方面:主要提供与业务逻辑无关的操作。比如系统中多个地方要使用到的文件上传功能,可以使用面向方向的思想在所有上传文件之前对文件的大小、格...

Redis删除特定前缀key的优雅实现

    还在用keys命令模糊匹配删除数据吗?这就是一颗随时爆炸的炸弹! Redis中没有批量删除特定前缀key的指令,但我们往往需要根据前缀来删除,那么究竟该怎么做呢?可能你一通搜索后会得到下边的答案 redis-cli --raw keys "ops-coffee-*" | xargs redis-cli del 直接在linux下通过redis的k...

Beta 1

Header 队名:To Be Done 组长博客 作业博客 团队项目进行情况 燃尽图(组内共享) 展示Git当日代码/文档签入记录(组内共享) **注: **由于GitHub的免费范围内对多人开发存在较多限制,因此我们不会使用GitHub作为主代码仓库,而是使用自建的Git基础设施,我们可能不定期将代码镜像到GitHub 组员情况 王永福(组...