2012-04-01 7 views
1

Ich würde gerne wissen, ob es möglich ist, ein Bild hochzuladen, wenn wir Soundcloud API verwenden.Bild mit Soundcloud-Track hochladen

ich einige params als artwork_url ohne Erfolg nach dieser Methode zu übergeben tryed:

curl -X POST "https://api.soundcloud.com/tracks.json" \ 
      -F 'oauth_token=valid_token' \ 
      -F 'track[asset_data][email protected]' \ 
      -F 'track[title]=A nice track title' \ 
      -F 'track[sharing]=public' \ 
      -F 'track[artwork_url][email protected]' 

ich versuchte, einen Titel aus der Soundcloud-Website mit einem angehängten Bild zu laden, funktioniert gut und das Bild in den artwork_url verfügbar Feld.
Wie auch immer versucht, ein Bild an dieses Feld zu übergeben, während eine neue Spur mit der API nicht funktioniert, ohne Fehler zu erstellen.

Ich habe versucht, URL auch aber ohne Glück zu übergeben.

+0

können Sie Ihre Frage bearbeiten, um den Fall anzuzeigen, den Sie beschrieben haben, der funktioniert hat? – dldnh

+0

der obige Fall funktioniert, aber kein Bild hochgeladen, wenn ich das Bild anzeigen möchte, muss ich meinen Track von der Website hochladen, nicht mit API. –

+0

Sie erwähnten einen Fall, der "gut funktioniert" und "Bild ist verfügbar" - ich meinte diesen Fall. Wie sind die zwei verschiedenen, Code-weise? – dldnh

Antwort

3

Für jeden, der mitkam, wurde die Antwort im Kommentarbereich herausgefunden. Das ist allerdings nicht offensichtlich, also hier.

Das Problem hier ist, dass Sie den Parameter [artwork_url] verfolgen, der schreibgeschützt ist. Wenn Sie ein Bild hochladen möchten, verwenden Sie den Parameter [artwork_data]. Beispiel:

curl -X POST "https://api.soundcloud.com/tracks.json" \ 
      -F 'oauth_token=valid_token' \ 
      -F 'track[asset_data][email protected]' \ 
      -F 'track[title]=A nice track title' \ 
      -F 'track[sharing]=public' \ 
      -F 'track[artwork_data][email protected]' 

Dies sollte gut funktionieren.

0

Wenn Sie https://github.com/thomasmodeneis/soundcloudnodejs verwenden So können Sie eine Spur mit den meisten verwendeten Feldern einschließlich des Bildes hochladen.

var track = { 
title: "My music", 
description: "My description", 
genre: "my genre", 
tag_list: "my tags with spaces", 
artwork_data: '/tmp/images/myimage.jpg', 
sharing: 'public', 
oauth_token: "MY_SOUNDCLOUD_TOKEN", 
asset_data: "/tmp/sound/mytrack.mp3", 
}; 

von der add-Methode Gefolgt:

soundcloudnodejs.addTrack(track, function (err, track) { 
... 
console.log("addTrack, track: ", track); 
console.log("permalink_url --> " + track.permalink_url); 
}); 

Beifall.