主頁 > 知識庫 > 瀏覽器跨域獲取Lrc歌詞數(shù)據(jù)的解決辦法

瀏覽器跨域獲取Lrc歌詞數(shù)據(jù)的解決辦法

熱門標(biāo)簽:團(tuán)購網(wǎng)站 銀行業(yè)務(wù) Linux服務(wù)器 電子圍欄 Mysql連接數(shù)設(shè)置 服務(wù)器配置 科大訊飛語音識別系統(tǒng) 阿里云
獲取同一個域的數(shù)據(jù),可以通過XMLHTTP組件或IFRAME來實(shí)現(xiàn),不存在跨域訪問的權(quán)限問題,因此比較簡單。
    但如果要訪問不同域的數(shù)據(jù)時,由于瀏覽器的安全設(shè)置,XMLHTTP沒有權(quán)限獲取數(shù)據(jù),而IFRAME沒有權(quán)限將獲取的數(shù)據(jù)傳遞給父窗口,似乎沒有其它解決辦法。

    頓悟……
    網(wǎng)頁內(nèi)引用不同域的腳本并不會提示權(quán)限不足,對了,就是它沒錯!

    解決方法找到了,現(xiàn)在來簡單測試一下:

    首先在51js.com服務(wù)器上新建一頁面(Test.html)。


[Ctrl+A 全選 注:引入外部Js需再刷新一下頁面才能執(zhí)行]


    解釋兩個關(guān)鍵點(diǎn):
    1. lastScript用于存放上次建立的script節(jié)點(diǎn)的ID,在下次要再新建script節(jié)點(diǎn)時,要刪除上次建立的節(jié)點(diǎn),以免加載的腳本越來越多,占用過多的內(nèi)存。
    2. url后面加了一個數(shù)值d是為了防止瀏覽器緩存腳本數(shù)據(jù),在本例中可以不加,但是如果腳本是由服務(wù)器動態(tài)生成的,那最好加上。

    然后再建立兩個java script腳本用于測試。

alert.js:
alert('You can see me!');
info.js:
g('myname').value='譜樂視聽';
g('myblog').value='www.aboutplayer.com';

    好了,譜樂已把它們放在aboutplayer.com服務(wù)器下,這樣它們和Test.html就不在同一個域內(nèi)了。

    用瀏覽器打開Test.html文件。
    點(diǎn)擊“Test Alert”,應(yīng)該會彈出對話框顯示You can see me!。
    點(diǎn)擊“Get My Info”,應(yīng)該會在文本框中顯示本站的信息。

    進(jìn)而,若把Lrc歌詞數(shù)據(jù)放入Js腳本文件中(不是直接更改文件擴(kuò)展名),就可實(shí)現(xiàn)跨域獲取Lrc歌詞數(shù)據(jù)了。

標(biāo)簽:大理 棗莊 衢州 萍鄉(xiāng) 廣元 衡水 蚌埠 江蘇

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《瀏覽器跨域獲取Lrc歌詞數(shù)據(jù)的解決辦法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266