国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

jQuery+JSON+jPlayer實現QQ空間音樂查詢功能示例

2019-11-20 22:38:42
字體:
來源:轉載
供稿:網友

演示地址: http://bejson.com/demos/qqmusic/
代碼下載:http://www.jqdemo.com/932.html
查詢QQ音樂是很早前就出來的一個接口。
這里使用jQuery和jPlayer來實現QQ空間音樂的查詢。
首先感謝bejson收集的各種有用的接口,當然也包含QQ空間音樂接口。
它的網址是:http://www.bejson.com/webInterface.php
我們要使用的接口位于bejson接口頁面中的音樂接口欄里。
QQ音樂接口地址:
http://qzone-music.qq.com/fcg-bin/fcg_music_fav_getinfo.fcg?dirinfo=0&dirid=1&uin=QQ號&p=0.519638272547262&g_tk=1284234856
這里給出核心代碼:
1.gtk參數的獲取方式
復制代碼 代碼如下:

function getGTK() {
var str = "@HR3etVm80";
var hash = 5381;
for (var i = 0,
len = str.length; i < len; ++i) {
hash += (hash << 5) + str.charAt(i).charCodeAt();
}
var gtk = hash & 0x7fffffff;
//document.getElementById("gtk").value = gtk;
return gtk;
}

2.請求QQ空間接口
復制代碼 代碼如下:

function getMusicId() {
var qqNo = document.getElementById("qqNo").value;
var url = 'http://qzone-music.qq.com/fcg-bin/cgi_playlist_xml.fcg?uin=' + qqNo + '&json=1&g_tk=' + getGTK();
$.getScript(url);
}

3.回調拼裝JSON
根據返回的JSON接口
 
我們來解析音樂JSON
復制代碼 代碼如下:

function jsonCallback(data) {
if(data.code==1){
alert(data.msg);
return;
}
var songs = data.qqmusic.playlist.song;
var dataStr = "[";
for (var i = 0; i < songs.length; i++) {
dataStr += "{";
dataStr += "title:'" + songs[i].xsong_name + "',";
dataStr += "mp3:'" + songs[i].xsong_url + "'";
dataStr += "}";
if (i < songs.length) {
dataStr += ',';
}
}
dataStr += ']';
eval("ds=" + dataStr);
newPlayer(ds);
}

最后我們調用jPlay播放器:
復制代碼 代碼如下:

var playList;
function newPlayer(data) {
playList = new jPlayerPlaylist({
jPlayer: "#jquery_jplayer_1",
cssSelectorAncestor: "#jp_container_1"
},
data, {
swfPath: "js",
supplied: "mp3",
wmode: "window"
});
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 盈江县| 石城县| 康乐县| 玛多县| 宁国市| 泰安市| 宝丰县| 报价| 夏河县| 福安市| 长寿区| 梓潼县| 阳江市| 牡丹江市| 泾源县| 遵化市| 洱源县| 格尔木市| 磐石市| 西林县| 株洲县| 宜宾县| 河曲县| 镇远县| 贵南县| 赤壁市| 西昌市| 蚌埠市| 湟源县| 鹤峰县| 乌海市| 汉阴县| 长春市| 呼和浩特市| 达拉特旗| 芮城县| 永城市| 凭祥市| 尼玛县| 西林县| 阿城市|