在Ajax中使用Flash實現跨域資料讀取

2022-01-11 22:31:00 字數 1365 閱讀 1122

ajax的跨域操作一直是乙個難題,現目前主要的解決方法主要有:

1、jsonp(需要在伺服器端支援)

2、iframe(僅能在子域間操作)

3、頁面**(這個有點萬能)

4、access-control-allow-origin(新版瀏覽器支援,需要在伺服器端設定header)

今天,小子再提供一種使用flash進行跨域操作的方法。眾所周之,其實flash的跨域操作也是有限制的,不過,flash的跨域配置比簡單,只需要在站點根目錄下放置crossdomain.xml即可。至於crossdomain.xml的用法,大家可以看看這篇文章: 這篇文章。

使用方法:

1、在頁面引入jquery與ajaxf.js檔案。

2、在頁面插入以下**。首先將flash安裝到頁面中。

$(document).ready(

function

() );

3、呼叫方法獲取遠端資料。

下面詳細說一下外掛程式所提供的方法:

$.ajaxf.install(swfpath)

安裝flash到頁面,可指定flash的路徑。

$.ajaxf.ready(function(){})

flash載入完後執行的函式。

$.ajaxf.isready()

返回flash是否已經載入完成。返回值為boolean

$.ajaxf.ajax(p)

原生的ajax呼叫支援,p為乙個物件,包括:callback,**函式;type,方法型別,支援json,text,xml,script;url,讀取資料的位址;method,請求的方法,支援get,post;data,傳送的資料;contenttype,請求的contenttype頭;header,object物件,附加的請求頭。

$.ajaxf.get(url, data, callback, type)

通過get方式獲取資料

$.ajaxf.post(url, data, callback, type)

通過post方式獲取資料

下面幾個大家一看名稱就知道函義就不多做解釋

$.ajaxf.gettext(url, data, callback)

$.ajaxf.getjson(url, data, callback)

$.ajaxf.getscript(url, data, callback)

$.ajaxf.postjson(url, data, callback)

$.ajaxf.posttext(url, data, callback)

下面演示一下如何獲取獲取優酷首頁的html**。

可惜,小子不知道怎麼在園子裡執行頁面上的**。只有各位朋友自己測試了。

在Flash中使用style

設定 style 安優先順序排序 1.直接設定 var mybutton button mybutton.setstyle fontsize 20 2.使用 css物件設定 stylename var styleobj new mx.styles.cssstyledeclaration styleo...

在django中使用ajax

1 實時的get請求 document on input phonenum function e 作為input文字實時傳入資料,get函式將會根據前面的if語句判斷條件被觸發,然後連線位址函式,並將觸發的函式結果作為引數返回,執行get函式中的語句 2 post請求ajax函式 submit cl...

在Ruby on Rails中使用AJAX的教程

如果沒有聽說過 rails,那麼歡迎您外星旅行歸來,近幾年大概只有那個地方沒有聽說過 ruby on rails 了。rails 最吸引人的地方是能夠很快地建立功能完備的應用程式並執行起來。rails 為 ajax 而內建整合的 prototype.js 庫可以輕鬆快速地建立所謂的富 interne...