浏览器跨域获取Lrc歌词数据的解决办法

Zhangyu0071801

Zhangyu0071801

2016-02-19 12:25

下面请跟着图老师小编一起来了解下浏览器跨域获取Lrc歌词数据的解决办法,精心挑选的内容希望大家喜欢,不要忘记点个赞哦!
获取同一个域的数据,可以通过XMLHTTP组件或IFRAME来实现,不存在跨域访问的权限问题,因此比较简单。
    但如果要访问不同域的数据时,由于浏览器的安全设置,XMLHTTP没有权限获取数据,而IFRAME没有权限将获取的数据传递给父窗口,似乎没有其它解决办法。

    顿悟……
    网页内引用不同域的脚本并不会提示权限不足,对了,就是它没错!

    解决方法找到了,现在来简单测试一下:

    首先在51js.com服务器上新建一页面(Test.html)。




    解释两个关键点:
    1. lastScript用于存放上次建立的script节点的ID,在下次要再新建script节点时,要删除上次建立的节点,以免加载的脚本越来越多,占用过多的内存。
    2. url后面加了一个数值d是为了防止浏览器缓存脚本数据,在本例中可以不加,但是如果脚本是由服务器动态生成的,那最好加上。

    然后再建立两个java script脚本用于测试。

alert.js:
alert('You can see me!');
info.js:
g('myname').value='谱乐视听';
g('myblog').value='www.aboutplayer.com';

    好了,谱乐已把它们放在aboutplayer.com服务器下,这样它们和Test.html就不在同一个域内了。

    用浏览器打开Test.html文件。
    点击“Test Alert”,应该会弹出对话框显示You can see me!。
    点击“Get My Info”,应该会在文本框中显示本站的信息。

    进而,若把Lrc歌词数据放入Js脚本文件中(不是直接更改文件扩展名),就可实现跨域获取Lrc歌词数据了。
展开更多 50%)
分享

猜你喜欢

浏览器跨域获取Lrc歌词数据的解决办法

Web开发
浏览器跨域获取Lrc歌词数据的解决办法

AJAX跨域问题的解决办法

Web开发
AJAX跨域问题的解决办法

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

IE浏览器假死的解决办法

浏览器
IE浏览器假死的解决办法

打开浏览器就假死的解决办法

浏览器
打开浏览器就假死的解决办法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

IE浏览器假死问题的解决办法

浏览器
IE浏览器假死问题的解决办法

IE浏览器图片不显示解决办法

浏览器
IE浏览器图片不显示解决办法

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

效果图出图大小分辨率怎么设置?

效果图出图大小分辨率怎么设置?

Ajax中要注意的问题

Ajax中要注意的问题
下拉加载更多内容 ↓