摘要:瀏覽器在請求不同域的資源時(shí),會因?yàn)橥床呗缘挠绊懻埱蟛怀晒Γ@就是通常被提到的跨域問題。需要說明的幾個(gè)點(diǎn)如果是協(xié)議和端口造成的跨域問題,前端是無能為力的。
前段時(shí)間在網(wǎng)上跟一個(gè)大廠據(jù)說很NB的同行大佬聊天,然后大佬問了我一個(gè)問題,“在實(shí)際生產(chǎn)中前端怎么解決跨域問題” 我當(dāng)時(shí)就回答說我們目前的狀況是需要服務(wù)端做一些配合解決的,然后大佬很不滿意的暗示了我一下JSONP用過嗎?我當(dāng)時(shí)就覺得很不可思議,實(shí)際生產(chǎn)中就只有g(shù)et請求嗎?而且這玩意兒在實(shí)際生產(chǎn)中都基本不用的,我開始有點(diǎn)懷疑我是不是掉隊(duì)了,所以今天大概梳理下這塊的知識點(diǎn)。
瀏覽器在請求不同域的資源時(shí),會因?yàn)橥床呗缘挠绊懻埱蟛怀晒?,這就是通常被提到的“跨域問題”。作為前端開發(fā),跨域經(jīng)常遇到,我們通常所說的JS跨域,指的是在處理跨域請求的過程中,技術(shù)面會偏瀏覽器端較多一些,那什么是跨域呢?
JavaScript出于安全方面的考慮,不允許跨域調(diào)用其他頁面的對象,當(dāng)協(xié)議、子域名、主域名、端口號,其中的任意一個(gè)不同的時(shí)候都是不同的域,那也就是算做跨域。
請求跨域的時(shí)候并不是請求發(fā)不出去,請求能發(fā)出去,服務(wù)端能收到請求并正常返回結(jié)果,只是結(jié)果被瀏覽器攔截了,正是因?yàn)橥床呗缘南拗疲床呗缘囊笫菂f(xié)議、域名、和端口號都完全一致才可以進(jìn)行正常的通信。
需要說明的幾個(gè)點(diǎn):
1.如果是協(xié)議和端口造成的跨域問題,前端是無能為力的。
2.在跨域問題上,域只是通過訪問URL的頭部(.com或者.cn以及之前部分)來識別的,而不是根據(jù)域名對應(yīng)的IP地址是否相同去判斷的。
3.在實(shí)際生產(chǎn)中JSONP的局限性很大,基本上不會去考慮,使用幾率很小。
目前我們的狀況是在服務(wù)器端頭部增加配置:
header( "Access-Control-Allow-Origin:*" ); header( "Access-Control-Allow-Methods:POST,GET" );
各位路過的大佬有什么優(yōu)秀的方案嗎?請不吝賜教
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/104324.html
摘要:解決方案跨域問題可以說在前端方面不可避免,但同源策略畢竟在保護(hù)網(wǎng)絡(luò)信息安全方面起到很大的作用。 起因 說起來源...今天去茶水間倒水時(shí),偶然聽到公司面試官在問面試者前端跨域的如何解決。我心中默默想了一想,啪啪啪瞬間想出幾個(gè)關(guān)鍵詞,iframe,cors,同源策略,jsonp...轉(zhuǎn)念一想,雖然這是很常見的面試題,然而我在開發(fā)過程中,還真沒有用過jsonp這種方式...就連原理也說不好。...
摘要:解決方案跨域問題可以說在前端方面不可避免,但同源策略畢竟在保護(hù)網(wǎng)絡(luò)信息安全方面起到很大的作用。 起因 說起來源...今天去茶水間倒水時(shí),偶然聽到公司面試官在問面試者前端跨域的如何解決。我心中默默想了一想,啪啪啪瞬間想出幾個(gè)關(guān)鍵詞,iframe,cors,同源策略,jsonp...轉(zhuǎn)念一想,雖然這是很常見的面試題,然而我在開發(fā)過程中,還真沒有用過jsonp這種方式...就連原理也說不好。...
摘要:還是老規(guī)矩,從易到難吧傳統(tǒng)的定時(shí)器,異步編程等。分配對象時(shí),先是在空間中進(jìn)行分配。內(nèi)存泄漏內(nèi)存泄漏是指程序中己動態(tài)分配的堆內(nèi)存由于某種原因程序未釋放或無法釋放,造成系統(tǒng)內(nèi)存的浪費(fèi),導(dǎo)致程序運(yùn)行速度減慢甚至系統(tǒng)崩潰等嚴(yán)重后果。 showImg(https://segmentfault.com/img/bVbwkad?w=1286&h=876); 網(wǎng)上參差不棄的面試題,本文由淺入深,讓你在...
摘要:還是老規(guī)矩,從易到難吧傳統(tǒng)的定時(shí)器,異步編程等。分配對象時(shí),先是在空間中進(jìn)行分配。內(nèi)存泄漏內(nèi)存泄漏是指程序中己動態(tài)分配的堆內(nèi)存由于某種原因程序未釋放或無法釋放,造成系統(tǒng)內(nèi)存的浪費(fèi),導(dǎo)致程序運(yùn)行速度減慢甚至系統(tǒng)崩潰等嚴(yán)重后果。 showImg(https://segmentfault.com/img/bVbwkad?w=1286&h=876); 網(wǎng)上參差不棄的面試題,本文由淺入深,讓你在...
閱讀 3445·2021-11-16 11:45
閱讀 2726·2021-09-22 15:23
閱讀 622·2021-07-30 14:58
閱讀 510·2019-08-30 15:54
閱讀 2302·2019-08-29 16:19
閱讀 3087·2019-08-29 12:45
閱讀 1013·2019-08-23 17:57
閱讀 1853·2019-08-23 17:54