Heim  >  Artikel  >  Web-Frontend  >  jQuery JSON jPlayer implementiert QQ Space Music-Abfrage

jQuery JSON jPlayer implementiert QQ Space Music-Abfrage

伊谢尔伦
伊谢尔伦Original
2016-11-22 13:27:391624Durchsuche

Querying QQ Music ist eine Schnittstelle, die vor langer Zeit auf den Markt kam.

JQuery und jPlayer werden hier verwendet, um die QQ-Space-Music-Abfrage zu implementieren.

Die Schnittstelle, die wir verwenden möchten, befindet sich in der Spalte „Musikschnittstelle“ auf der Bejson-Schnittstellenseite.

Adresse der QQ-Musikschnittstelle:

http://qzone-music.qq.com/fcg-bin/fcg_music_fav_getinfo.fcg?dirinfo=0&dirid=1&uin=QQ号&p=0.519638272547262&g_tk= 1284234856

Der Kerncode ist hier angegeben:

1. So erhalten Sie GTK-Parameter

f

unction 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-Space-Schnittstelle anfordern

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

3. Rückruf zum Zusammenstellen von JSON

Gemäß der zurückgegebenen JSON-Schnittstelle

jQuery JSON jPlayer implementiert QQ Space Music-Abfrage

Lassen Sie uns das analysieren Musik 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:&#39;" + songs[i].xsong_name + "&#39;,";
    dataStr += "mp3:&#39;" + songs[i].xsong_url + "&#39;";
    dataStr += "}";
    if (i < songs.length) {
      dataStr += &#39;,&#39;;
    }
  }
  dataStr += &#39;]&#39;;
  eval("ds=" + dataStr);
  newPlayer(ds);
}

Schließlich nennen wir jPlay Player:

var playList;
function newPlayer(data) {
  playList = new jPlayerPlaylist({
    jPlayer: "#jquery_jplayer_1",
    cssSelectorAncestor: "#jp_container_1"
  },
  data, {
    swfPath: "js",
    supplied: "mp3",
    wmode: "window"
  });
}


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn