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)
    })
  }
}

运行后发现调用成功

相关推荐
葬送的代码人生6 分钟前
React组件化哲学:如何优雅地"变秃也变强"
前端·javascript·react.js
Bl_a_ck11 分钟前
【JS进阶】ES6 实现继承的方式
开发语言·前端·javascript
咪库咪库咪18 分钟前
js的浅拷贝与深拷贝
javascript
幸福的猪在江湖18 分钟前
第一章:变量筑基 - 内力根基修炼法
javascript
Ryan今天学习了吗18 分钟前
💥不说废话,带你使用原生 JS + HTML 实现超丝滑拖拽排序效果
javascript·html
Momoly0820 分钟前
vue3+el-table 利用插槽自定义数据样式
前端·javascript·vue.js
多啦C梦a20 分钟前
从 React 初体验到数据驱动的界面开发:一步步解析 Todo List 组件
javascript·react.js
Spider_Man21 分钟前
“AI查用户”也能这么简单?手把手带你用Node.js+前端玩转DeepSeek!
javascript·人工智能·node.js
bo5210022 分钟前
从0到1:Element Plus虚拟树的拖拽功能二次开发实战
javascript·vue.js
小约翰仓鼠22 分钟前
vue3表格使用Switch 开关
前端·javascript·vue.js