vue使用json-server 模拟数据

借鉴:

ttps://juejin.cn/post/7043424909472563208#heading-2

json-server:来完全模拟请求以及请求回来的过程

安装json-server

在根目录下全局安装

npm install -g json-server

之后会自动生成一个db.json文件。注意是自动生成后的文件所在位置,可以自定义修改里面的内容
在这里插入图片描述
存放全部数据在这里插入图片描述

打开终端:设置端口:
该端口作为脚手架的端口号

json-server db.json --port 8080

在package.json文件中,scripts中配置一个mock,该端口号作为访问虚拟数据的端口号
在这里插入图片描述

vue页面发请求

安装axios

在这里插入图片描述

发送请求

在这里插入图片描述

运行

这里需要使用多线程,也就是需要再开一个终端
在这里插入图片描述
此时可以成功访问
在这里插入图片描述
在这里插入图片描述

备注在这里插入图片描述

200 成功 服务器已经成功处理了请求
201 创建 表示服务器执行成功并且创建了新的资源

配置proxyTable跨域

安装vue-resource

npm install vue-resource

引入

//main.js
import Vue from 'vue'
import App from './App.vue'
import Resource from 'vue-resource';
Vue.use(Resource); //使用resource

Vue.config.productionTip = false

new Vue({
    render: h => h(App),
}).$mount('#app')

配置proxyTable请求数据

//vue.config.js
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
    transpileDependencies: true,
    devServer: {
        port: 8080,

        host: "localhost",

        https: false,

        // 自动启动浏览器

        open: false,
        proxy: {
            '/api/': {
                target: 'http://localhost:3003', //将http://localhost:3003映射到/api
                changeOrigin: true, //是否跨域
                pathRewrite: {
                    '^/api': '', // 因为在 ajax 的 url 中加了前缀 '/api',而原本的接口是没有这个前缀的,所以需要通过 pathRewrite 来重写地址,将前缀 '/api' 转为 '/'
                }
            }
        },
    }

})

网络请求修改

 created() {
        axios({
            method: 'get',
            // url: 'http://httpbin.org',
            url:" /api/posts"
        }).then(res => { console.log(res); })
        axios({
  method: 'post',
  url: 'http://localhost:3003/posts',
  data: {
    firstName: 'Fred',
    lastName: 'Flintstone'
  }
}).then(res=>{console.log(res);})
  },

}

在这里插入图片描述

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一夕ξ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值