本篇內(nèi)容主要講解“有關(guān)Ajax跨域問題的解決方法”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“有關(guān)Ajax跨域問題的解決方法”吧!
成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),壽陽(yáng)企業(yè)網(wǎng)站建設(shè),壽陽(yáng)品牌網(wǎng)站建設(shè),網(wǎng)站定制,壽陽(yáng)網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,壽陽(yáng)網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
概述
Ajax跨域是前端開發(fā)中常見的問題,本文描述了以Google瀏覽器Chrome作為客戶端和以Tomcat作為Web服務(wù)器的情況下的解決辦法。
問題現(xiàn)象
當(dāng)出現(xiàn)跨域訪問的時(shí)候ajax通常會(huì)報(bào)類似如下錯(cuò)誤:
XMLHttpRequest cannot load http://192.168.2.12:8001/oss/api/version/check. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8000' is therefore not allowed access.
解決辦法一:關(guān)閉瀏覽器的跨域安全設(shè)置,僅限于開發(fā)的時(shí)候測(cè)試用
以chrome瀏覽器為例,右鍵點(diǎn)擊chrome的快捷方式,然后在Target的值后面追加 --disable-web-security,注意--前面有個(gè)空格。例如:
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-web-security
啟動(dòng)之后,Chrome瀏覽器會(huì)提示您"您使用的是不受支持的命令行標(biāo)記:--disable-web-security",說(shuō)不安全,因此僅限于測(cè)試。
這樣就可以直接測(cè)試,不會(huì)出現(xiàn)跨域的錯(cuò)誤了!
解決辦法二:配置Web服務(wù)器支持跨域訪問
這里描述以Tomcat為Web服務(wù)器情況下的解決辦法,在Java Web程序的WEB-INF下的web.xml文件中加入如下配置即可。
CorsFilter org.apache.catalina.filters.CorsFilter CorsFilter /*
注意:org.apache.catalina.filters.CorsFilter下面有好幾個(gè)配置的選項(xiàng),上面沒有配置時(shí)就采用系統(tǒng)的默認(rèn)配置。在實(shí)際生產(chǎn)環(huán)境要根據(jù)需要進(jìn)行配置來(lái)提高安全性。比如cors.allowed.origins配置允許訪問的源地址,默認(rèn)為所有,即*。此外,還有cors.allowed.methods,cors.allowed.headers等等。
到此,相信大家對(duì)“有關(guān)Ajax跨域問題的解決方法”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!