angular/ng-alain/ionic/springmvc/node 跨域問題 解決方法

前言:

跨域問題只有通過后臺解決风题!后臺解決判导!后臺解決嫉父!重要的事情說三遍!

重點:

1.如果你是純前端眼刃,請告訴自己的后臺讓他來解決跨域問題绕辖,你就不需要看了。

2.如果你前后臺都懂擂红,但后臺不在自己手里面仪际,請看完解決辦法后,右轉(zhuǎn)使用反向代理昵骤。

3.如果你前后臺都懂树碱,而且后臺在自己手里,請繼續(xù)往下看变秦。

4.這里只提供cors的跨域解決辦法赴恨。

正文:

1.產(chǎn)生原因

它是由瀏覽器的同源策略造成的,是瀏覽器施加的安全限制伴栓。

2.解決辦法

2.1 產(chǎn)生跨域請求的時候,前臺首先會向后臺發(fā)送OPTIONS請求判斷時否允許跨域雨饺。此時后臺只需要返回允許跨域的headers即可钳垮。換句話說允許跨域只需要后臺修改http header就可以解決問題。

** 后臺主要是四個header (這些是在后臺修改的额港,前臺改這個沒有用=攘!R普丁6且健!向瓷!)

2.1.1? Access-Control-Allow-Origin 允許跨域的訪問地址肠套。比如??http://localhost:8088,但也可以直接配置成通配符 *(* 這樣會產(chǎn)生前臺無法攜帶cookies的問題猖任,造成后臺session失效)

2.1.2?Access-Control-Allow-Methods 允許跨域訪問的請求方式你稚。比如 GET,POST,OPTIONS

2.1.3?Access-Control-Allow-Credentials 是否允許攜帶cookies 需要Access-Control-Allow-Origin 不為 *

2.1.4?Access-Control-Allow-Headers 允許跨域訪問的header,比如 X-Requested-With,Origin,Content-Type,application/json,Authorization,Token 這些header需要在此處配置朱躺,否則會發(fā)生 header is not allowed錯誤刁赖。

** 前臺需要添加的header(這個是在前臺添加的!3げ蟆S畛凇!T辞搿枪芒!)

2.1.5 withCredentials: true??是否允許攜帶cookies彻况,需要后臺Access-Control-Allow-Origin 不為 *。

3.例子 (提供Node.js 與 Spring MVC兩種病苗,不提供源碼反正我也是復制的自己找吧疗垛,寫的比較粗糙,大佬們見諒硫朦。)

3.1 Spring mvc?

添加一個corsfilter贷腕,全局處理訪問請求即可,filter順位要求最優(yōu)先咬展。


我這里是把對應的配置信息寫在了web.xml里面泽裳,提供對應的web.xml配置信息。


3.2 Node.js?


破婆、

直接寫在app.js 處理即可涮总。

4.總結(jié)

4.1 跨域后臺改一下header就可以解決了,沒有想象中那么麻煩祷舀。

4.2 跨域post會發(fā)送兩次瀑梗,第一次是options,options通過才會發(fā)送post

4.3 如果 Access-Control-Allow-Origin設置為*裳扯,前臺會無法攜帶cookies造成后臺session無法使用抛丽。當然后臺可以用其他方式解決,比如用jwttoken然后從redis中取session數(shù)據(jù)饰豺。

4.4 付成功效果圖

4.5 Options 返回狀態(tài)碼應該是 204亿鲜。即無返回內(nèi)容狀態(tài)。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末冤吨,一起剝皮案震驚了整個濱河市蒿柳,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌漩蟆,老刑警劉巖垒探,帶你破解...
    沈念sama閱讀 218,607評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異爆安,居然都是意外死亡叛复,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,239評論 3 395
  • 文/潘曉璐 我一進店門扔仓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來褐奥,“玉大人,你說我怎么就攤上這事翘簇∏寺耄” “怎么了?”我有些...
    開封第一講書人閱讀 164,960評論 0 355
  • 文/不壞的土叔 我叫張陵版保,是天一觀的道長呜笑。 經(jīng)常有香客問我夫否,道長,這世上最難降的妖魔是什么叫胁? 我笑而不...
    開封第一講書人閱讀 58,750評論 1 294
  • 正文 為了忘掉前任凰慈,我火速辦了婚禮,結(jié)果婚禮上驼鹅,老公的妹妹穿的比我還像新娘微谓。我一直安慰自己,他們只是感情好输钩,可當我...
    茶點故事閱讀 67,764評論 6 392
  • 文/花漫 我一把揭開白布豺型。 她就那樣靜靜地躺著,像睡著了一般买乃。 火紅的嫁衣襯著肌膚如雪姻氨。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,604評論 1 305
  • 那天剪验,我揣著相機與錄音肴焊,去河邊找鬼。 笑死功戚,一個胖子當著我的面吹牛抖韩,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播疫铜,決...
    沈念sama閱讀 40,347評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼双谆!你這毒婦竟也來了壳咕?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,253評論 0 276
  • 序言:老撾萬榮一對情侶失蹤顽馋,失蹤者是張志新(化名)和其女友劉穎谓厘,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體寸谜,經(jīng)...
    沈念sama閱讀 45,702評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡竟稳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,893評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了熊痴。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片他爸。...
    茶點故事閱讀 40,015評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖果善,靈堂內(nèi)的尸體忽然破棺而出诊笤,到底是詐尸還是另有隱情,我是刑警寧澤巾陕,帶...
    沈念sama閱讀 35,734評論 5 346
  • 正文 年R本政府宣布讨跟,位于F島的核電站纪他,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏晾匠。R本人自食惡果不足惜茶袒,卻給世界環(huán)境...
    茶點故事閱讀 41,352評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望凉馆。 院中可真熱鬧薪寓,春花似錦、人聲如沸句喜。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽咳胃。三九已至植康,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間展懈,已是汗流浹背销睁。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留存崖,地道東北人冻记。 一個月前我還...
    沈念sama閱讀 48,216評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像来惧,于是被迫代替她去往敵國和親冗栗。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,969評論 2 355

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