在前后端分离的项目中,我们有时会遇到这样的情况,即前端项目完成后,我们需要调用后台接口进行调试,但是有时候后台接口还没有完成,这时候就需要我们自己模拟一下。如果我们只是获取一些数据,直接使用jsonplaceholder就可以了,但是如果我们要post一些数据,使用jsonplaceholder就有点力不从心了。这时候我们可以使用json-server搭建一个本地数据接口,然后我们就可以对本地数据进行增删改查了。json-server的主要功能是模拟服务器接口数据,构建本地数据接口。就是我们要mock的数据,方便调试和调用。一般在前后端分离后使用。前端人员可以在不依赖API开发的情况下,在本地搭建一个JSON服务,自己生成测试数据来模拟后端响应数据,然后测试一些业务逻辑。json-server是一个可以快速构造假数据的RESTAPI服务器。它的文档非常全面。需要注意的是它只接受json格式的请求。使用Postman等工具测试POST、PUT方法时,需要设置Content-Type为application/jsonjson-server官网:https://www.npmjs.com/package/json-serverjson-的Github地址服务器:https://github.com/typicode/json-server第一步:使用npm全局安装json-server(前提是已经安装好node环境) npminstall-gjson-server安装完成后,可以使用命令json-server-h查看是否安装成功,成功后会出现下图:~~~~Step2:初始化并创建文件夹。我在桌面新建一个文件夹jsonserver,然后通过命令行cddesktop/jsonserver导入到这个文件夹里面初始化一个package.json文件,因为需要在当前下载相应的package.json文件modules和plugins文件下,否则我们没办法使用命令npminit/npminit--yes来初始化,完成后会在文件夹下增加一个新的package.json文件来安装npm依赖的模块installjson-server--S安装完成后会生成node_modules需要的依赖。在package.json文件的依赖项中,会有json-server和版本号来创建JSON数据。作为API的数据源,在jsonserver文件夹下创建一个db.json文件,写入json数据:{"users":[{"name":"tt","phone":"123456789","email":"111@qq.com","age":"20","id":1,"companyId":1},{"name":"dede","phone":"123456789","email":"222@qq.com","age":"30","id":2,"companyId":2}]}注意:数据格式符合JSON格式(特别注意最后一个键值对后面不能有逗号),key和value值要用双引号,修改配置文件,打开package.json文件,配置脚本如下。json-server默认是3000端口,我们也可以自己指定端口。-watchdb.json--port3004第三步:运行json-server执行npmrunjson:server运行成功,提供一个3000端口的地址浏览器访问http://localhost:3000(启动json-server后,点击就会生效)哦,json文件中的每一个对象都类似于启动成功后一个API接口响应的数据,在Resources下访问这些接口就可以得到对应的数据,然后与db.json进行对比(因为我导入了jsonplaceholder数据,所以和最初定义的数据不一样)文件的数据可以找到:/posts/comment/profile下的Resources是db.json中的子对象,/db是整个db。json数据包也就是json-server把db.json的根节点的每一个key都当作url。所以只要修改db.json文件,就可以作为数据接口使用了。
