vue2的webpack(vue.config.js) 怎么使用请求转发 devServer.proxy

首先用 express 搭建后端服务器,注意使用中间件解析json格式的请求体,才会获取到 post 参数

复制代码
app.use(express.json());

app.js

复制代码
const express = require('express')
const app = express()
app.use(express.json());
const port = 3000

app.post('/api/vue2', (req, res) => {
  console.log(req.body)
  res.header('Access-Control-Allow-Origin','*')
  res.send({ss: req.body})
})

app.listen(port, () => {
  console.log(`Example app listening on port ${port}`)
})

node app.js 启动服务

vue.config.js

复制代码
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
  transpileDependencies: true,
  devServer: {
    proxy: {
      '/api': {
        target: 'http://localhost:3000'
      }
    }
  }
})

main.js

复制代码
import Vue from 'vue'
import App from './App.vue'
import axios from 'axios'

Vue.config.productionTip = false
Vue.prototype.$axios = axios

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

App.vue

复制代码
export default {
  name: 'App',
  components: {
    HelloWorld
  },
  mounted() {
    console.log('mounted')
    this.$axios({
      method: 'post',
      url: '/api/vue2',
      data: {
        aa: 'test1',
        bb: 'test2'
      }
    }).then(res => {
      console.log('res', res)
    })
  }
}

运行后发现调用成功

相关推荐
随笔记2 分钟前
uniapp蓝牙连接设备并发送接收信息
javascript·uni-app·app
脑袋大大的8 分钟前
从“PPT动画”到“丝滑如德芙”——uni-app x 动画性能的“终极奥义”
前端·javascript·nginx·uni-app·uniapp·app开发·混合开发
随笔记26 分钟前
uniapp开发的app原生操作手机系统文件
前端·javascript·uni-app
上单带刀不带妹1 小时前
ES6中import与export的用法详解
开发语言·javascript·es6·import·export
江城开朗的豌豆1 小时前
让页面"记住自己"——前端状态保留实战技巧
前端·javascript·vue.js
chancygcx_1 小时前
前端框架Vue3(四)——组件通信及其他API
vue.js·前端框架
Java陈序员1 小时前
轻松设计 Logo!一款 Pornhub 风格的 Logo 在线生成器!
vue.js·node.js·vite
前与端1 小时前
深入理解JavaScript的事件循环(Event Loop)
javascript
星眠1 小时前
手写发布订阅设计模式
javascript·设计模式·面试
安然dn1 小时前
极简实战:React + Vue 微前端(Qiankun + Vite)
前端·vue.js