前端vue+iview跨域问题

本文详细介绍了在Vue项目中使用iView组件库时遇到的跨域上传问题及解决方案。通过配置proxyTable实现跨域请求,确保上传功能正常运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vue+iview跨域问题

我们在前端使用的使用,一般情况下我们会使用axios进行跨域来请求后台的数据,但是当我们用不到axios的时候如何进行跨域,比如说:上传的时候,使用iview组件

<Upload
			        ref="upload"
			        :show-upload-list="false"
			        :default-file-list="defaultList"
			        :on-success="handleSuccess"
			        :format="['jpg','jpeg','png']"
			        :max-size="2048"
			        :on-format-error="handleFormatError"
			        :on-exceeded-size="handleMaxSize"
			        :before-upload="handleBeforeUpload"
			        multiple
			        type="drag"
			        action="//jsonplaceholder.typicode.com/posts/"
			        style="display: inline-block;width:58px;">
			        <div style="width: 58px;height:58px;line-height: 58px;">
			            <Icon type="ios-camera" size="20"></Icon>
			        </div>
			    </Upload>

在这里我们使用action作为上传的路径,这个时候就会出现跨域的问题

解决的办法

在vue项目下的config/index.js里面配置
就在vue项目下的config/index.js里面配置
在index.js 的proxyTable里配置如下东西
在index.js 的proxyTable里配置如下东西

 proxyTable: {
                '/api': {
                    target: 'http://10.1.5.11:8080/api',     //跨域地址
                    changeOrigin: true,							//是否进行跨域
                    pathRewrite: {
                      '^/api': '',	//这里理解成用‘/api’代替target里面的地址,

                                后面组件中我们掉接口时直接用api代替

                                比如我要调用'http://10.1.5.11:8080/xxx/duty?time=2017-07-07 14:57:22',

                                直接写‘/api/xxx/duty?time=2017-07-07 14:57:22’即可

                                在开发环境显示地址:http://localhost:9600//api/xxx/duty?time=2017-07-07 14:57:22
                    },
                }
            },

这里是引用 https://blog.youkuaiyun.com/qq_41756364/article/details/79982932

如果这还没有解决你的疑问

很多人在做vue项目的时候都会封装axios,里面会封装一部分的路径,这个时候这个api要和你封装的那一部分路径的数据一样

这个api要和你封装的那一部分路径的数据一样
这个问题就这样解决了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值