时间:2021-05-25
最近遇到这个需要单页访问跨域后台的问题。
可以按照如下设置:
proxyTable: {'/list': {target: 'http://api.xxxxxxxx.com',pathRewrite: {'^/list': '/list'}}}这样我们在写url的时候,只用写成/list/1就可以代表api.xxxxxxxx.com/list/1.
那么又是如何解决跨域问题的呢?其实在上面的'list'的参数里有一个changeOrigin参数,接收一个布尔值,如果设置为true,那么本地会虚拟一个服务端接收你的请求并代你发送该请求,这样就不会有跨域问题了,当然这只适用于开发环境。增加的代码如下所示:
proxyTable: {'/list': {target: 'http://api.xxxxxxxx.com',changeOrigin: true,pathRewrite: {'^/list': '/list'}}}遇到了网上很多人说的,proxyTable无论如何修改,都没效果的现象。
经过几轮测试,总结出一下几种解决方案:
1.(非常重要)确保proxyTable配置的地址能访问,因为如果不能访问,在浏览器F12调试的时候看到的依然会是提示404。
并且注意,在F12看到的js提示错误的域名,是js写的那个域名,并不是代理后的域名。
另外配置正常的话,在idea的控制台,会有错误提示显示,例如:
Your application is running here:http://localhost:8082 [HPM] Error occurred while trying to proxy request /api/user/ts from localhost:8082 to http://localhost:1920/ (ECONNREFUSED)
2.(奇葩解决)个人感觉这个http代理的插件有缓存,proxyTable的修改会无效,这时候可以尝试修改启动项目的端口,就在proxyTable属性配置的下面几行有个port: 8080,改成其他,例如8081,就会有效,然后再改回来就好。
3.这个比较多人说了,就是要手动再执行一次npm run dev
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
问题描述 BIOS中设置开机密码无效,如何解决? 解决方案 设置setuserpassword无效的情况下 需要更改(Advancedbiosfea
本文介绍了详解WMIRPC服务器不可用的解决方案,分享给大家,具体如下:ConnectionOptionsconnectionOptions=newConnec
就一直这样,卡在这儿,不动,也不报错,也没有报错日志。以下是我尝试的解决方案:扩展idea内存,无效。重启电脑,无效,似乎也不是网络的问题。切换本地仓库,无效。
问题截图:解决方案:1、打开File-->Setting窗口2、搜索Webpack3、选择如下路径总结以上所述是小编给大家介绍的解决Idea、WebStorm下
最近由于项目需要,需要对已有的两个vue项目进行webpack3升级到webpack4,此处记录一下整个升级过程的几个重要步骤,以及遇到的问题和解决方案。1、更