vue2中使用mockjs出现报错proxy error: could not proxy request xxx from xxx to xxx 和404,500问题

问题说明

出现proxy error: could not proxy request报错,应该是因为devServer代理的服务器未开启,或者地址错误,改正就好。

404 not found,找不到请求的资源。应该检查发送请求的api地址是否错误。

项目配置

vue.config.js:

devServer: {
    proxy: {
      "/api": {
        target: "http://localhost:8080",
        changeOrigin: true,
        pathRewrite: {
          "^/api": ""
        }
      }
    }
},

mockjs配置:

import Mock from "mockjs";

let data = {
  statu: 0,
  "list|1": [
    {
      date: "@date('yyyy-MM-dd')",
      name: "@cname",
      address: "@county(true)"
    }
  ]
};
//拦截接口
Mock.mock("/api/get/mocklists/1", "get", data);

当我发送请求/api/get/mocklists/1后,mock会匹配到请求的URL,拦截并返回模拟的数据。此时查看浏览器调试工具Network可以发现没有发出的请求。

总结

使用mockjs,devServer和axios时,

  • 通过axios发送请求
  • 请求地址,会先被mockjs匹配拦截,不匹配则发送请求
  • 此时请求会被devServer代理转发,如果有pathRewrite配置,则重写请求地址,然后发送真正请求
  • 如果请求服务器未开启或转发的地址错误,会报Proxy error:...或是500/404状态码

PS:使用工具或库,一定要仔细看文档,一定要仔细看文档,一定要仔细看文档
前端新手,如有问题请指出

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值