2016-07-13 4 views
0

Also habe ich ein Tutorial über Soundcloud SDK durch CodeAcademy gemacht und wollte das Wissen, das ich daraus gelernt habe, nehmen und es auf Codepen setzen. Aber ich möchte einen anderen Track verwenden als den, den sie in diesem Tutorial verwenden - speziell diesen Song https://soundcloud.com/hardwell/coldplay-sky-full-of-stars-hardwell-remix-download.Soundcloud SDK - Load track von url

Ich habe gelesen, dass /resolve war ein guter Ansatz, um die TrackID, aber es funktioniert nicht. Ich bekomme 403 Forbidden in der Konsole.

SC.get('/resolve/?url=https://soundcloud.com/hardwell/coldplay-sky-full-of-stars-hardwell-remix-download&client_id=3596a42d6242b9c1ee76740a7771d33a', function(track) { 
    console.log(track); // returns null 
}); 

Hier ist meine codepen. Bitte helfen Sie mir, diesen Track für meinen SoundCloud SDK Audio Player zu laden. Danke

Antwort

1

Ihr Code ist korrekt und funktioniert sogar mit einigen Spuren, zum Beispiel denen aus der Dokumentation.

Sie stoßen auf ein Problem, das ich persönlich gefunden habe, sollte in ihrer Dokumentation hervorgehoben werden. Der API-Zugriff für diese Spur wurde deaktiviert (auch wenn das Widget aktiviert ist). Daher haben Sie nicht das Recht, diese Spur über die API abzufragen, und sie gibt einen ungültigen HTTP-Statuscode zurück.

Dies ist im Linked Services Teil der SoundCloud terms of use beschrieben:

Sie können die Verfügbarkeit bestimmter Ihre Inhalte an anderen Nutzer der Plattform und den Nutzern von verlinkten Service, jederzeit begrenzen und beschränken Verwenden Sie für jeden hochgeladenen Sound die Registerkarte "Berechtigungen" im Abschnitt "Track bearbeiten", vorbehaltlich der Bestimmungen im nachfolgenden Disclaimer-Abschnitt.

Sie können in Ihrem Code überprüfen, ob irgendein Fehler wie diese beim Abrufen der Spur Informationen und je nach Erfolg oder Misserfolg angetroffen wurden, weiter mit der richtigen Aktion:

var clientId = 'CLIENT_ID'; 

SC.initialize({ 
    client_id: clientId 
}); 

var songUrl = 'https://soundcloud.com/hardwell/coldplay-sky-full-of-stars-hardwell-remix-download'; 

SC.get('/resolve?url=' + songUrl + '&client_id=' + clientId, function(data, error) { 
    if (error === null) { 
    console.log('Do something like playing the song.'); 
    } else { 
    console.log('Print an error message?'); 
    } 
}); 
+0

ah ich sehe. Ich schätze, mein Plan wird nicht so funktionieren. Danke für deine Antwort! – cocoa

Verwandte Themen