jQuery JSON jPlayer实现QQ空间音乐查询
发布时间:2025-12-09 21:24:09
浏览次数:3
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"});}