MockServer实现前后数据交互分离

MockServer实现前后数据交互分离

在与后台进行数据交互的过程中,作为前端开发者有个深深的痛点,当我们与后台沟通好了前后数据交互的规则后,就开始等后台完全开发好接口我们才能进一步工作;说白了工作发生阻塞了,严重影响工作效率;

通过(json-server+mock.js+proxy),其中proxy表示代理,通过json-server工具将json数据以接口的形式调用,其中json数据是通过(mock.js或faker.js)来进行实现的;至于代理可以用nginx服务进行代理处理,或者通过web-dev-server服务器中proxy配置进行配置;

 

Json-server工具:

通过npm包管理器进行安装:
cnpm install -g json-server

安装成功后在项目目录下建立test.json文件,内容如下:

 

然后在test.json目录运行json-server test.json命令,默认是3000端口;

运行成功如下:

若端口错误导致运行失败;就运行json-server test.json --port xxxx命令更改端口

打开http://localhost:9090页面,会出现一下页面;

单击Resources其中的某个链接会出现相应的数据;可以用postman工具进行接口测试;

若想更改json文件时不需要重新启动json-server,只需将命令改成json-server wacth test.json --port xxxx即可;是不是很强大;还不止于此,json-server可以完全模仿restful api接口的形式开发,进行数据上的增删改查;如下:

多种请求方式:(增,删,改,查)

GET    /posts //数据查询

GET    /posts/1 //id=1数据查询

POST   /posts //增加数据

PUT    /posts/1 //全部更新id=1的数据

PATCH  /posts/1 //部分更新id=1的数据

DELETE /posts/1 //删除id=2的数据

Json-server功能强大,很多功能都值得研究,比如:静态文件服务器,路由配置,将json-server进行模块开发;这里就不一一列出来,参考网址:https://www.jianshu.com/p/ebb823bfbcb2;

Mock.js和Faker.js这两个都是数据模拟库,至于具体的区别Mock.js对于英语菜的来说,学习代价低,学习资料都是中文的;mock.js官网地址:http://mockjs.com/

对于请求我们最好放到服务器上运行,如果是单纯的静态文件上的数据请求可以用json-server静态文件配置命令进行配置,命令如下:

Json-server test.json --static ./public --port xxxx //注意一定需要有public目录,浏览器打开的http://localhost:xxxx默认指向public目录或public目录下的index.html;

通过webpack的模块Webpack-dev-server来进行服务器的搭建,在这里可能会遇到跨域的问题,只需要配置webpack-dev-server中的proxy即可;

Nginx服务器,个人用的比较多,感觉配置简单,基础学习上手容易;想了解的可以自行百度了解下nginx服务器;

 

猜你喜欢

转载自blog.csdn.net/u012475786/article/details/86648640