Heim >Web-Frontend >js-Tutorial >Verwenden der SoundCloud -API mit dem JavaScript SDK
SoundCloud hat eine API zur Verfügung gestellt, mit der Entwickler fast alle gewünschten Daten erhalten können. Seine Verwendung kann jedoch verwirrend sein, insbesondere für Anfänger, da ab sofort die SoundCloud -API -Dokumentation und die Beispiele verschiedene Versionen des SDK (Software Development Kit) verwenden.
Was ist der Unterschied zwischen der API und dem SDK? Grundsätzlich ist die API eine Sammlung von URLs, die Zugriff auf Daten von SoundCloud-Servern ermöglichen, und der SDK ist eine vorgeschriebene Bibliothek (oder Client) zur Abfrage der API. Um mehr zu erfahren, sehen Sie diese Diskussion.
In diesem Tutorial lernen wir, wie Sie auf die SoundCloud -API zugreifen und wie Sie den Prozess mithilfe des SDK vereinfachen. Wir werden das SDK einrichten und dann das JavaScript schreiben, um Daten zu erhalten, Audio abzuspielen und mehr von SoundCloud.
Die Konzepte und Funktionsweise von HTTP und APIs kennen, wird hilfreich sein. Wenn Sie mehr über APIs erfahren möchten, empfehle ich diesen kurzen Kurs: eine Einführung in APIs. Ein kleines Wissen über asynchrones Javascript, Versprechen und Rückrufe hilft ebenfalls. JQuery wird in unseren Code -Beispielen verwendet, so
Um die SoundCloud -API mit JavaScript abzufragen, müssen wir den von SoundCloud bereitgestellten JavaScript -SDK herunterladen. Wie bereits erwähnt, sind zwei verschiedene Versionen des SDK verfügbar.Der Hauptunterschied zwischen ihnen besteht darin, dass sie Daten zurückgeben, wenn eine asynchrone Anfrage an die API gestellt wird. Die neueste Version gibt ein Versprechen zurück, während die andere eine Rückruffunktion als Parameter erfordert.
Ein Problem, das mir aufgefallen ist, ist, dass es mit der Version von SDK, die in der Dokumentation verwendet wird, ein Problem mit der Benutzerloginfunktionalität zu geben scheint, da das Popup-Fenster nicht automatisch geschlossen wird.
Für den Einfachheit halber willen, und weil es stabiler ist, werden wir die alte Version in den Beispielen in diesem Tutorial verwenden. Diese Version erfordert Rückruffunktionen für asynchrone Anfragen.
Wir erstellen eine grundlegende HTML -Seite, die als Homepage dient. Wir werden auch die SDK hier einbeziehen, damit wir seine Funktionalität nutzen können.
<span><span><!DOCTYPE html></span> </span><span><span><span><html</span>></span> </span> <span><span><span><head</span>></span> </span> <span><span><span><title</span>></span>Include SDK - Using SoundCloud API<span><span></title</span>></span> </span> <span><span><span><script</span> src<span>="//connect.soundcloud.com/sdk.js"</span>></span><span><span></script</span>></span> </span> <span><span><span></head</span>></span> </span> <span><span><span><body</span>></span><span><span></body</span>></span> </span><span><span><span></html</span>></span> </span>
Beachten Sie, dass wir das SDK direkt von den Servern von SoundCloud in unsere Seite aufgenommen haben. Sie können den SDK auch herunterladen und darauf verweisen wie:
<span><span><span><script</span> src<span>="sdk.js"</span>></span><span><span></script</span>></span> </span>
zum Testen, ob das SDK korrekt in Ihre Webseite geladen wird:
Wenn ein undefinierter Fehler angezeigt wird, wird er nicht richtig geladen. Versuchen Sie es zu aktualisieren und stellen Sie sicher, dass der Pfad zur SDK -Datei (SDK.js) korrekt ist.
Um eine SoundCloud -App zu registrieren, benötigen Sie lediglich ein SoundCloud -Konto. Wenn Sie noch keinen haben, erstellen Sie einen. Durch die Registrierung einer App können SoundCloud -Server unsere Anfrage überprüfen, sodass niemand sonst eine Anfrage in unserem Namen stellen kann.
Hinweis: Wir können diesen Schritt überspringen, wenn wir die Funktion "Benutzer-Login" auf unserer Website nicht verwenden möchten. Es wird im nächsten Abschnitt erklärt.
Öffnen Sie die SoundCloud -Apps -Seite. Hier werden alle Apps, die wir bereits erstellt haben, aufgeführt. Stellen Sie sicher, dass Sie in Ihrem SoundCloud -Konto angemeldet sind. Hinweis: Sie müssen für diesen Zweck kein separates Konto erstellen. Sie können das gleiche Konto verwenden, das Sie für persönliche Zwecke verwenden.
Klicken Sie auf die Taste Registrieren Sie eine neue Anwendung .
Geben Sie ihm einen Namen und akzeptieren Sie die Entwicklerrichtlinien von SoundCloud, indem Sie das Kontrollkästchen überprüfen.
Klicken Sie auf die Big Register , um die App -Registrierung abzuschließen.
Nachdem wir uns erfolgreich registriert haben, werden wir auf die Einstellungsseite unserer neu erstellten App umgeleitet. Dort finden wir die Client -ID unserer App , mit der unsere Anfragen genehmigt werden. Wir können die Felder und Callback für den Moment verlassen. Wir werden später dazu kommen.
initialisieren Sie den Client.js Datei. tun.
Die JavaScript -Syntax, um dies zu tun, ist:
<span><span><!DOCTYPE html></span> </span><span><span><span><html</span>></span> </span> <span><span><span><head</span>></span> </span> <span><span><span><title</span>></span>Include SDK - Using SoundCloud API<span><span></title</span>></span> </span> <span><span><span><script</span> src<span>="//connect.soundcloud.com/sdk.js"</span>></span><span><span></script</span>></span> </span> <span><span><span></head</span>></span> </span> <span><span><span><body</span>></span><span><span></body</span>></span> </span><span><span><span></html</span>></span> </span>
lass es uns aufschlüsseln:
Beispiele
Erhalten Sie eine Liste von Tracks
<span><span><span><script</span> src<span>="sdk.js"</span>></span><span><span></script</span>></span> </span>Siehe die Stiftlisten -Tracks von SitePoint (@sitepoint) auf CodePen.
Was dies tut, ist, dass es den Endpunkt /verfolgt und eine Rückruffunktion erwartet. Die Antwort wird im Antwortparameter des Rückrufs gespeichert, bei dem es sich um ein Array von JavaScript -Objekten mit mehreren Eigenschaften handelt, wobei der Titel eines davon ist. Wir können konsolen.log (Antwort [0]) anstelle von Looping, um ein ganzes Objekt und seine Eigenschaften zu sehen. Dann werden wir wissen, auf welche Eigenschaften wir Zugriff haben.
Beachten Sie in diesem Beispiel haben wir während der Initialisierung keine Callback -URL angegeben. Dies liegt daran, dass es hier keine Rolle spielt, ob wir es angeben oder nicht. So oder so wird unser Code funktionieren. Wenn wir jedoch die Funktionen der Benutzer-Login implementieren, ist dies von Bedeutung und ist erforderlich, damit niemand unsere Client-ID verwenden kann.
Einbetten eines Tracks
<span>SC.initialize({ </span> <span>client_id: "CLIENT_ID", </span> <span>redirect_uri: "CALLBACK_URL" </span><span>}); </span>Siehe den Stift, der einen Track von sitepoint (@sitepoint) auf CodePen einbettet.
lass es uns aufschlüsseln:
Dieser Trick kann verwendet werden, um einen Song oder eine Musik in eine Website einzubetten.
Für die Implementierung der Benutzer-Login-Funktionalität müssen wir eine Rückruf-URL für Autorisierungszwecke haben. Dies ist eine Anforderung des OAuth -Protokolls. Wenn Sie neugierig sind, finden Sie hier eine vereinfachte Erklärung von: OAuth 2 vereinfacht. Lassen Sie uns also die App -Einstellungen aktualisieren, um eine Callback -URL von Callback.html hinzuzufügen, die wir jetzt erstellen werden.
Nachdem sich ein Benutzer angemeldet hat, leitet das Popup-Fenster in diese Datei weiter. In unserem Fall werden wir es Callback.html benennen und es befindet sich im selben Verzeichnis wie unsere Homepage (index.html). Dies ist die Datei, die wir im Feld Callback in unseren App -Einstellungen geben müssen.
Der Code, den wir in der Rückrufdatei verwenden müssen, ist in der Dokumentation bereitgestellt. Die Dokumentation ist jedoch etwas veraltet, sodass wir sie leicht ändern, um moderne Standards zu erfüllen.
Sie können seine Nachricht und das Design so viel ändern, wie Sie möchten, aber fürs Erste werden wir sie so einfach wie möglich halten:
<span><span><!DOCTYPE html></span> </span><span><span><span><html</span>></span> </span> <span><span><span><head</span>></span> </span> <span><span><span><title</span>></span>Include SDK - Using SoundCloud API<span><span></title</span>></span> </span> <span><span><span><script</span> src<span>="//connect.soundcloud.com/sdk.js"</span>></span><span><span></script</span>></span> </span> <span><span><span></head</span>></span> </span> <span><span><span><body</span>></span><span><span></body</span>></span> </span><span><span><span></html</span>></span> </span>
sc.connect (Callback) ist die Methode zur Implementierung der Benutzer-Login-Funktion. Es öffnet ein Popup-Fenster und veranlasst den Benutzer, sich bei ihrem SoundCloud-Konto anzumelden. Die grundlegende Verwendung ist wie unten:
<span><span><span><script</span> src<span>="sdk.js"</span>></span><span><span></script</span>></span> </span>
Ein etwas interessanteres Beispiel wäre:
<span>SC.initialize({ </span> <span>client_id: "CLIENT_ID", </span> <span>redirect_uri: "CALLBACK_URL" </span><span>}); </span>
lass es uns aufschlüsseln:
Beachten Sie, dass eine Anfrage an /mich Daten über den derzeit angemeldeten Benutzer zurückgibt. Daher führt die Verwendung, bevor der Benutzer angemeldet wurde, zu einer Fehlermeldung.
spielen
Sobald sich der Benutzer angemeldet hat, können wir so viel mehr tun. Um einen Teil der Macht zu demonstrieren, habe ich eine Demo -Website auf GitHub erstellt. Hier finden Sie den Quellcode und sehen ihn hier in Aktion.Gehen wir durch zwei der Dateien. In Index.html sind die vier Divs von Bedeutung, da sie mit Benutzerdaten ausgefüllt werden, nachdem der Benutzer angemeldet ist:
<span><span><!DOCTYPE html></span> </span><span><span><span><html</span>></span> </span> <span><span><span><head</span>></span> </span> <span><span><span><title</span>></span>Include SDK - Using SoundCloud API<span><span></title</span>></span> </span> <span><span><span><script</span> src<span>="//connect.soundcloud.com/sdk.js"</span>></span><span><span></script</span>></span> </span> <span><span><span></head</span>></span> </span> <span><span><span><body</span>></span><span><span></body</span>></span> </span><span><span><span></html</span>></span> </span>
Die nächste wichtigste Datei ist Skript.js: Alle Magie geschieht hier. Der größte Teil des Codes wird uns vertraut sein, aber gehen wir schnell durch:
<span><span><span><script</span> src<span>="sdk.js"</span>></span><span><span></script</span>></span> </span>
<span>SC.initialize({ </span> <span>client_id: "CLIENT_ID", </span> <span>redirect_uri: "CALLBACK_URL" </span><span>}); </span>
<span>SC.get("/tracks", function(response) { </span> <span>for (var i = 0; i < response.length; i++) { </span> <span>$("ul").append("<li>" + response[i].title + "</li>"); </span> <span>} </span><span>}); </span>
Es gibt noch viel mehr, was wir tun können, z. B. das Abrufen oder Aktualisieren der Beschreibung des Benutzers, das Erhalten des Avatars des Benutzers, sehen, wem der Benutzer folgt und deren Favoriten.
Eine API von der Client-Seite abfragt, ist ein leistungsstarkes Tool, das uns vor den Komplexität des Back-Ends erspart. Der SDK erleichtert unser Leben viel einfacher. Nach dem Erlernen seiner Grundlagen können wir noch leistungsstarke und benutzerfreundlichere Webanwendungen erstellen. Sehen Sie einige Beispiele für das, was möglich ist, und sehen Sie sich die offizielle SoundCloud -Dokumentation an, um mehr über die verfügbaren erweiterten API -Methoden zu erfahren.
Ich würde gerne von Ihnen hören, welche Dinge Sie mit dem Soundcloud SDK aufgebaut haben (oder planen). Lass es mich in den Kommentaren wissen!
sc.initialize ({
client_id: 'your_client_id'Wie erhalte ich die Details eines Tracks? Methode und übergeben Sie den URI der Spur als Parameter. Die API -Antwort enthält die Details des Tracks.
});
Wie erhalte ich die Tracks eines Benutzers? SC.Get -Methode und Pass '/user/{user_id}/tracks' als Endpunkt. Ersetzen Sie "{user_id}" durch die ID des Benutzers. Die API -Antwort enthält die Tracks des Benutzers.
Das obige ist der detaillierte Inhalt vonVerwenden der SoundCloud -API mit dem JavaScript SDK. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!