vue axios解决跨域

vue.config.js

module.exports = {
  publicPath: process.env.NODE_ENV === 'production' ? './' : '/',
  devServer: {
    proxy:{
      "/api":{
        target: "http://xx.xx.xx.xx:9001/",
        changeOrigin: true,
        pathRewrite:{
          "^/api": ''
        }
      }
    }
  },
  productionSourceMap: false,
  lintOnSave: false,
  configureWebpack: {
    resolve: {
      alias:{
        // 起别名
      }
    }
  },
}

/api 会代替http://xx.xx.xx.xx:9001/去请求真实的服务器地址
页面中写:

  <el-upload
        class="upload-demo"
        action="#"
        :on-preview="handlePreview"
        :on-remove="handleRemove"
        :before-remove="beforeRemove"
        :limit="3"
        :on-exceed="handleExceed"
        :file-list="fileList"
        :http-request="httpRequest"
        :on-progress="handleProgress"
        :before-upload="beforeUpload"
    >
      <el-button size="small" type="primary">点击上传</el-button>
      <div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div>
    </el-upload>

VUE methods 里面写:

methods:{
    beforeUpload(file) {
      let fd = new FormData()
      fd.append('fileName',file)  // 传参
      axios.post('/api/minio/uploads',fd,{
        headers:{
        // 请求头
          'Content-Type': 'multipart/form-data; boundary=--------------------------908415175326278934569157'
        }
      }).then(() => {
        this.$message.success("文件上传成功")
      }).catch(() => {
        this.$message.error("文件上传失败")
      })
    },

script 里面引入:

<script>
import axios from "axios";
。。。。。。。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小飞LOVE霞

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

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

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

打赏作者

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

抵扣说明:

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

余额充值