bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

ajax如何解決跨域訪問遇到的問題-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)ajax如何解決跨域訪問遇到的問題的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名申請(qǐng)、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、瑪曲網(wǎng)站維護(hù)、網(wǎng)站推廣。

Ajax請(qǐng)求一個(gè)目標(biāo)地址為非本域(協(xié)議、域名、端口任意一個(gè)不同)的web資源,并根據(jù)響應(yīng)獲得外部應(yīng)用數(shù)據(jù)。比如我們用Ajax訪問城市天氣預(yù)報(bào)、IP地址等公共服務(wù)接口時(shí),就涉及跨域了。我們請(qǐng)求一個(gè)外部服務(wù)時(shí),瀏覽器會(huì)基于安全問題拒絕授權(quán)訪問。

而script、script、iframe標(biāo)簽的src屬性就不存在跨域的問題,所以Ajax跨域就是利用這一點(diǎn)以及js對(duì)JSON的支持,外部服務(wù)只要給Ajax的請(qǐng)求響應(yīng)一段JS代碼或JSON數(shù)據(jù),就能被Ajax獲取到。

由于安全方面的原因, 客戶端js使用xmlhttprequest只能用來向來源網(wǎng)站發(fā)送請(qǐng)求,比如在www.readlog.cn下去請(qǐng)求test.readlog.cn的數(shù)據(jù),都是不行的。不過,解決辦法倒是不少。這里整理一下。

解決方式1 web代理的方式 (on Server A)

由該頁面代替用戶頁面完成交互,從而返回合適的結(jié)果。此方案可以解決現(xiàn)階段所能夠想到的多數(shù)跨域訪問問題,但要求A網(wǎng)站提供Web代理的支持,因此A網(wǎng)站與B網(wǎng)站之間必須是緊密協(xié)作的,且每次交互過程,A網(wǎng)站的服務(wù)器負(fù)擔(dān)增加,且無法代用戶保存session狀態(tài)。

解決方式2. on-Demand方式 (on Server A)

MYMSN的門戶就用的這種方式,不過 MYMSN中不涉及跨域訪問問題。在頁面內(nèi)動(dòng)態(tài)生成新的

解決方式3. iframe方式 (on Server A)

查看過醒來在JavaEye上的一篇關(guān)于跨域訪問的帖子,他提到自己已經(jīng)用iframe的方式解決了跨域訪問問題。數(shù)據(jù)提交跟獲取,采用iframe這種方式的確可以了,但由于父窗口與子窗口之間不能交互(跨域訪問的情況下,這種交互被拒絕),因此無法完成對(duì)父窗口效果的影響。

在頁面內(nèi)嵌或動(dòng)態(tài)生成指向別的網(wǎng)站的IFRAME,然后這2個(gè)網(wǎng)頁間可以通過改變對(duì)方的anchor hash fragment來傳輸消息。改變一個(gè)網(wǎng)頁的anchor hash fragment并不會(huì)使瀏覽器重新裝載網(wǎng)頁,所以一個(gè)網(wǎng)頁的狀態(tài)得以保持,而網(wǎng)頁本身則可以通過一個(gè)計(jì)時(shí)器(timer)來察覺自己anchor hash的變化,從而相應(yīng)改變自己的狀態(tài)。

解決方式4. 用戶本地轉(zhuǎn)儲(chǔ)方式 (local)

IE本身依附于windows平臺(tái)的特性為我們提供了一種基于iframe,利用內(nèi)存來“繞行”的方案,即兩個(gè)window之間可以在客戶端通過windows剪貼板的方式進(jìn)行數(shù)據(jù)傳輸,只需要在接受數(shù)據(jù)的一方設(shè)置Interval進(jìn)行輪詢,獲得結(jié)果后清除Interval即可。FF的平臺(tái)獨(dú)立性決定了它不支持剪貼板這種方式,而以往版本的FF中存在的插件漏洞又被fixed了,所以FF無法通過內(nèi)存來完成暗渡陳倉。而由于文件操作FF 也沒有提供支持(無法通過Cookie跨域完成數(shù)據(jù)傳遞),致使這種技巧性的方式只能在IE中使用。

解決方式5: (其實(shí)還是在服務(wù)端A用iframe解決了與服務(wù)器B通信的問題)

要解決的問題:發(fā)生在用戶提交網(wǎng)頁 URL (還包括 Tag, Notes 等)給bookmark 服務(wù)器時(shí)。

關(guān)于 URL 的提交至少可以有三種方式:

1. 登陸 Bookmark 服務(wù)器的提交頁面,將要收藏的 URL 通過該頁面提交給服務(wù)器。
2. 安裝瀏覽器插件,通過插件將 URL 提交給服務(wù)器。
3. 從 Bookmark 服務(wù)器動(dòng)態(tài)加載 javascript 小工具到當(dāng)前頁面,通過它來完成提交工作。

第一種方式開發(fā)起來最簡(jiǎn)單,但對(duì)用戶來講比較麻煩,每次都需要先登陸 Bookmark 服務(wù)器才能完成提交;第二種方式我并不熟悉插件開發(fā),而且用戶也不喜歡太多的插件堆滿自己的瀏覽器;第三種方式開發(fā)難度小,又避免了每次登陸服務(wù)器的麻煩,所以最終采用它。第三種方式中動(dòng)態(tài)加載的 javascript 小工具除了需要生成 UI 供用戶填寫信息( URL , tag , notes 等),當(dāng)用戶點(diǎn)擊提交的時(shí)候,還要完成與服務(wù)器通信的功能。

感謝各位的閱讀!關(guān)于“ajax如何解決跨域訪問遇到的問題”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

本文題目:ajax如何解決跨域訪問遇到的問題-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://vcdvsql.cn/article14/csspge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、關(guān)鍵詞優(yōu)化移動(dòng)網(wǎng)站建設(shè)軟件開發(fā)、ChatGPT、網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化