1、 json-sever模拟数据

文章介绍了如何使用json-server在前端本地创建一个用于存储和操作JSON数据的服务器。通过npm全局安装json-server,然后运行命令启动服务,可以自动生成db.json文件并提供HTTP接口进行CRUD操作。此外,还展示了如何修改默认端口和通过package.json管理启动命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

json-serverjson-server是一个在前端本地运行,可以存储json数据的server

json-server官网:https://github.com/typicode/json-server#getting-started

1、全局安装

1.1使用npm全局安装json-server

npm install -g json-server

1.2通过查看版本号,来测试是否安装成功:

json-server -v
D:\Desktop\vue\code\sever>npm install -g json-server

added 205 packages, removed 63 packages, and changed 110 packages in 13s

D:\Desktop\vue\code\sever>json-server -v
0.17.3

2、 创建json数据

2.1初次运行

在任意一个文件夹下,在命令行执行代码,会自动在文件夹下创建出一个db.json文件

json-server --watch db.json
D:\Desktop\vue\code\sever>json-server --watch db.json

  \{^_^}/ hi!

  Loading db.json
  Oops, db.json doesn't seem to exist
  Creating db.json with some default data

  Done

  Resources
  http://localhost:3000/posts
  http://localhost:3000/comments
  http://localhost:3000/profile

  Home
  http://localhost:3000

根据结果提示,可以在浏览器中访问 http://localhost:3000

2.2再次启动命令

json-server --watch db.json

3、修改端口号

从上面启动日志可以看到,json-server默认是3000端口,但也可以自己指定端口,指令如下:

json-server --watch db.json --port 3001

上面的启动命令有点长,可以考虑使用package.json文件来管理启动命令,在db.json同级文件夹下新建一个package.json,编写如下配置信息:

{
    "scripts": {
        "mock": "json-server db.json --port 3001"
    }
}

再启动服务时只需要执行如下指令

npm run mock

4、 简单使用

4.1准备页面

<el-button type="success"
               @click="getUserInfo()">查询</el-button>
    <el-button type="success"
               @click="addUserInfo()">增加</el-button>
    <el-button type="success"
               @click="modifyUserInfo()">修改</el-button>
    <el-button type="success"
               @click="deleteUserInfo()">删除</el-button>

4.2请求数据

4.2.1查询全部数据

getUserInfo () {
      axios.get("http://localhost:3000/posts").then(res => {
        console.log(res);
      })
    },

4.2.2根据查询id

getUserInfo () {
      axios.get("http://localhost:3000/posts/1").then(res => {
        console.log(res);
      })
    },

4.3增加数据

addUserInfo () {
      const obj = {
        uname: "添加张三",
        pwd: "123"
      }
      axios.post("http://localhost:3000/posts", obj).then(res => {
        console.log(res);
      })
    },

4.4 根据id修改数据

modifyUserInfo () {
      const obj = {
        uname: "修改张三",
        pwd: "123"
      }
      axios.put("http://localhost:3000/posts/7", obj).then(res => {
        console.log(res);
      })
    },

4.5删除数据

deleteUserInfo () {
      axios.delete("http://localhost:3000/posts/7").then(res => {
        console.log(res);
      })
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值