vue 解決跨域

vue 請(qǐng)求數(shù)據(jù)挺益,總結(jié)下vue跨越問題

第一種.服務(wù)器服務(wù)器不支持跨域請(qǐng)求

1.當(dāng)跨域無法請(qǐng)求的時(shí)候我們可以工程目錄下新建vue.config.js。

添加下面的代碼:

module.exports = {
  proxyTable: {
    '/api': {
      target: 'http://api.douban.com/v2',
      changeOrigin: true,
      pathRewrite: {
        '^/api': ''
      }
    }
  }
},

將target設(shè)置為我們需要訪問的域名乘寒。

2.然后在main.js中設(shè)置全局屬性:

Vue.prototype.HOST = '/api'

3.我們就可以在全局使用這個(gè)域名了望众,如下:

var url = this.HOST + '/movie/in_theaters'

this.$http.get(url).then(res => {
  this.movieList = res.data.subjects;
},res => {
  console.info('調(diào)用失敗');
});

第二種:服務(wù)器端支持跨域

String data = JsonUtil.toJsonNonNull(pubXtzdBos);
    
OutputStream out = response.getOutputStream(); 
    
out.write(data.getBytes("UTF-8"));//以UTF-8進(jìn)行編碼  
    
response.setHeader("Access-Control-Allow-Origin", "*");

//告訴瀏覽器編碼方式  
response.setHeader("Content-Type","text/html;charset=UTF-8" ); 

就是能支持跨域那就可以使用jsonp來請(qǐng)求了。jsonp實(shí)際上就是通過添加script標(biāo)簽來添加的伞辛,

請(qǐng)求回來的數(shù)據(jù)也是js格式烂翰。axios目前還不支持,只能自己手動(dòng)創(chuàng)建script標(biāo)簽蚤氏,把請(qǐng)求的地址賦給script標(biāo)簽的src屬性甘耿,最后添加到head標(biāo)簽上,等到請(qǐng)求返回再把標(biāo)簽刪掉:

jsonpRequest: function (a, e) {
  this._ajaxTimer && clearTimeout(this._ajaxTimer);
  this._ajaxTimer = setTimeout(function () {           
    var request_script = document.createElement('script');
    request_script.setAttribute("id", "request_script");   
    request_script.src = 'http://xxxx'+'&t=' + Date.now();
    window.callback = function (response) {
      // 移除腳本
      document.body.removeChild(document.getElementById('request_script'));
      console.log(response.content);
    }
    document.body.appendChild(request_script);
  }, 500);
}

講真竿滨,本地開發(fā)適合第一種吧 然后可以正常使用axios進(jìn)行ajax請(qǐng)求了佳恬,
但這樣只能在開發(fā)模式下才能使用捏境。打包部署的時(shí)候建議使用nginx做代理,我也沒有試過第二種毁葱,也是查閱資料總結(jié)的垫言。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市倾剿,隨后出現(xiàn)的幾起案子筷频,更是在濱河造成了極大的恐慌,老刑警劉巖前痘,帶你破解...
    沈念sama閱讀 216,402評(píng)論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件凛捏,死亡現(xiàn)場離奇詭異,居然都是意外死亡际度,警方通過查閱死者的電腦和手機(jī)葵袭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,377評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來乖菱,“玉大人,你說我怎么就攤上這事蓬网≈纤” “怎么了?”我有些...
    開封第一講書人閱讀 162,483評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵帆锋,是天一觀的道長吵取。 經(jīng)常有香客問我,道長锯厢,這世上最難降的妖魔是什么皮官? 我笑而不...
    開封第一講書人閱讀 58,165評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮实辑,結(jié)果婚禮上捺氢,老公的妹妹穿的比我還像新娘。我一直安慰自己剪撬,他們只是感情好摄乒,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,176評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著残黑,像睡著了一般馍佑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上梨水,一...
    開封第一講書人閱讀 51,146評(píng)論 1 297
  • 那天拭荤,我揣著相機(jī)與錄音,去河邊找鬼疫诽。 笑死舅世,一個(gè)胖子當(dāng)著我的面吹牛旦委,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播歇终,決...
    沈念sama閱讀 40,032評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼社证,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼!你這毒婦竟也來了评凝?” 一聲冷哼從身側(cè)響起追葡,我...
    開封第一講書人閱讀 38,896評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎奕短,沒想到半個(gè)月后宜肉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,311評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡翎碑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,536評(píng)論 2 332
  • 正文 我和宋清朗相戀三年谬返,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片日杈。...
    茶點(diǎn)故事閱讀 39,696評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡遣铝,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出莉擒,到底是詐尸還是另有隱情酿炸,我是刑警寧澤,帶...
    沈念sama閱讀 35,413評(píng)論 5 343
  • 正文 年R本政府宣布涨冀,位于F島的核電站填硕,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏鹿鳖。R本人自食惡果不足惜扁眯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,008評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望翅帜。 院中可真熱鬧姻檀,春花似錦、人聲如沸藕甩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽狭莱。三九已至僵娃,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間腋妙,已是汗流浹背默怨。 一陣腳步聲響...
    開封第一講書人閱讀 32,815評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留骤素,地道東北人匙睹。 一個(gè)月前我還...
    沈念sama閱讀 47,698評(píng)論 2 368
  • 正文 我出身青樓愚屁,卻偏偏與公主長得像,于是被迫代替她去往敵國和親痕檬。 傳聞我的和親對(duì)象是個(gè)殘疾皇子霎槐,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,592評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • vue --解決跨域問題 一、什么是跨域梦谜? 跨域問題一般是因?yàn)闉g覽器的同源策略問題丘跌。同源是指,協(xié)議+域名+端口 三...
    前田一喃閱讀 419評(píng)論 0 0
  • 在vue開發(fā)中實(shí)現(xiàn)跨域:在vue項(xiàng)目根目錄下找到vue.config.js文件(如果沒有該文件則自己創(chuàng)建)唁桩,在pr...
    猴子不吃胡蘿卜閱讀 399評(píng)論 0 0
  • 項(xiàng)目源碼:https://github.com/trp1119/cross-domain 1 跨域問題的出現(xiàn) 1....
    中國式情調(diào)閱讀 1,210評(píng)論 1 6
  • 注:文章太長了闭树,因此分為兩段,但第一部分比較常用也更重要荒澡,可重點(diǎn)掌握报辱。跨域指的是瀏覽器不能執(zhí)行其它網(wǎng)站的腳本单山,由于...
    AizawaSayo閱讀 3,830評(píng)論 0 4
  • 只要你做過前端項(xiàng)目碍现,你就一定聽過跨域。如果跨域都有沒聽說過的米奸,還說自己是做前端的鸵赫,那你肯定還停留在十年前的項(xiàng)目吧,...
    木木心丶閱讀 353評(píng)論 0 2