色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁技術文章
文章詳情頁

解決vue $http的get和post請求跨域問題

瀏覽:6日期:2022-09-28 18:57:55
vue $http的get和post請求跨域問題

首先在config/index.js中配置proxyTable

proxyTable: { ’/api’:{ // target:’http://jsonplaceholder.typicode.com’, target:’http://localhost:9080’, changeOrigin:true, pathRewrite:{ ’/api’:’’ } }

用戶名和密碼登錄的表單提交

methods: {// get請求 // submitForm() { // var formData=JSON.stringify(this.ruleForm); // this.$http.get(’/api/amdatashift/login/probe’).then(function(data){ // }).catch(function(){ // console.log('服務器異常'); // }); // } //post請求 submitForm() { var formData=JSON.stringify(this.ruleForm); this.$http.post(’/api/amdatashift/login/user’,{ username:this.ruleForm.username, password:this.ruleForm.password },{ emulateJSON:true}).then(function(data){ console.log(data); }).catch(function(){ console.log('服務器異常'); }); } }值得注意的是:

1、一定要設置 {emulateJSON: true},不然跨域不成功.

2、跨域在chrome瀏覽器中你看到的還是http://localhost:8080(即你啟動vue的地址,而不是你服務器應用的地址),所以你看到不要驚訝,其實是跨域成功的。

3、http請求中要帶上/api,經過index.js的代理會將/api去掉,瀏覽器中的訪問地址為http://localhost:8080/api/amdatashift/login/user,然后實際的訪問的地址是http://localhost:9080/amdatashift/login/user。通過代理就實現了跨域訪問。

vue el-upload上傳控件一直報跨域問題 post請求變成get請求

最近做vue的上傳,用的是elmentui的el-upload控件,結果一直出幺蛾子,希望大家少走坑。

不多說 截圖上代碼。

1。搬控件改action地址

解決vue $http的get和post請求跨域問題

配置好了后,直接測試,emmm ..... 報錯 如下:

解決vue $http的get和post請求跨域問題

提示了跨域問題,這個能理解畢竟我是本機開發前端服務和后端服務端口不一樣。

查找資料,vue跨域問題的解決方案,然后說的開啟代理。

解決vue $http的get和post請求跨域問題

找到vue項目的config中的index.js文件打開,添加如圖中的東西。 注意changeOrigin是true。這個意思用/api代替http://192.158.111.101:8000。例子:原地址’http://localhost:8000/ssmShow/upload’ 現地址’/api/ssmShow/upload’。

所以上傳控件改為:

解決vue $http的get和post請求跨域問題

測試 ;emmmm。。。又錯了

解決vue $http的get和post請求跨域問題

解決vue $http的get和post請求跨域問題

還是報錯跨域,而且請求了2次,而且請求有問題啊

文件上傳應該還是post請求,結果這邊一個get請求 一個options請求。懵逼。302的狀態不會改,先去搞后面這個500的報錯。

options的請求網上有他的解釋和處理方法 我照著改了(方法是用過濾器截取請求,并修改) 貼代碼 我的是java 后臺。

添加過濾器。

解決vue $http的get和post請求跨域問題

同時web.xml需要添加如下

解決vue $http的get和post請求跨域問題

改后重啟java后臺,測試 emmm。。。如下:

解決vue $http的get和post請求跨域問題

解決vue $http的get和post請求跨域問題

解決vue $http的get和post請求跨域問題

這次厲害了 調用三次接口了 ,我去。不過好的情況是 options請求已經返回正確了,因為options請求返回正確了,所以請求了第三次。

仔細看了下第三次請求,這個是個get請求啊。附件上傳怎么就是個get請求呢。

網上找了很久,大家都說的el-upload這個控件有問題。不能用action,于是按照網上方法在action里面加個假的地址,直接在控件的before-upload的鉤子函數上動手腳。

直接在這里面用axios的post請求來提交文件。

解決vue $http的get和post請求跨域問題解決vue $http的get和post請求跨域問題

繼續測試

解決vue $http的get和post請求跨域問題

第三次上傳請求還是個get請求,這就有問題了,說el-upload中的action有問題就算了 怎么直接調用post請求,會直接變成get請求呢。然后找了好久。在一個老哥的提醒下知道。

js或者vue中當有錯誤時候,會導致post請求變成get請求。然后我就找了我的錯誤那就是我的地址。

解決vue $http的get和post請求跨域問題

你說氣不氣,居然只是這個地方少了斜杠,加上后測試

解決vue $http的get和post請求跨域問題

一切都好了 ,請求只有一個了 post還是post了 文件也上傳成功了。雖然很難過 還是很開心。

注意我圖中標記的地址,這個里面端口是8080的 還有api字樣,這不是我的后臺真正地址,這是代理地址,他通過代理就能訪問我的真實地址了 ,所以老哥們別看見端口不對 或者地址路徑不對就認為不對了 這個是對的。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 久草在线视频免费资源观看 | 天堂8中文在线最新版在线 天堂8资源8在线 | 成人在免费视频手机观看网站 | 亚洲天堂一区二区 | 波多野结衣在线观看一区二区 | 久久久久国产精品免费 | 一区二区三区视频在线 | 国产精品视频久久久久 | 久草免费福利视频 | 精品在线一区二区三区 | a级片在线免费播放 | 中国美女一级黄色片 | 91b站| 日韩在线观看中文字幕 | 经典香港a毛片免费观看 | 国产美女精品一区二区三区 | 综合国产| 天堂素人搭讪系列嫩模在线观看 | 日日狠狠久久偷偷四色综合免费 | 久久男人的天堂色偷偷 | 一级毛片真人免费播放视频 | 日韩视频网 | 精品伊人久久久久7777人 | 精品国产一区二区二三区在线观看 | 免费国产成人高清无线看软件 | 亚洲男女在线 | 99视频在线观看视频一区 | 欧美色老头oldvideo | 在线精品国产成人综合第一页 | 在线免费观看一级片 | 欧美成人影院在线观看三级 | 亚洲成 人a影院青久在线观看 | 2022年国产精品久久久久 | 欧美一级欧美一级毛片 | 欧美色视频日本片高清在线观看 | 久色免费视频 | 成年女人看片免费视频播放器 | 久久精品国产亚洲综合色 | 精品久久久久久综合网 | 亚洲精品98久久久久久中文字幕 | 亚洲欧美一区二区三区在饯 |