我想知道在使用soundcloud API时是否可以上传图片。
我尝试将一些参数作为artwork_url传递,但没有成功遵循此方法:
curl -X POST "https://api.soundcloud.com/tracks.json" \
-F 'oauth_token=valid_token' \
-F 'track[asset_data]=@audio.wav' \
-F 'track[title]=A nice track title' \
-F 'track[sharing]=public' \
-F 'track[artwork_url]=@image.jpg'
我尝试从附带图像的soundcloud网站上传曲目,工作正常,图片在artwork_url
字段中可用。
无论如何,尝试将图像传递到此字段,同时创建API无法正常工作的新轨道,而不会出错。
我也尝试过传递网址,但没有运气。
答案 0 :(得分:4)
对于任何人来说,答案都在评论部分中找到了。这可能不是很明显,所以这里就是。
这里的问题是您正在使用track [artwork_url]参数,该参数是只读的。如果您要上传图稿,请使用曲目[artwork_data]参数。例如:
curl -X POST "https://api.soundcloud.com/tracks.json" \
-F 'oauth_token=valid_token' \
-F 'track[asset_data]=@audio.wav' \
-F 'track[title]=A nice track title' \
-F 'track[sharing]=public' \
-F 'track[artwork_data]=@image.jpg'
这应该可以正常工作。
答案 1 :(得分:0)
如果您使用https://github.com/thomasmodeneis/soundcloudnodejs 这是您可以上传包含最常用字段的曲目的方法,包括图像。
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",
};
接下来是add方法:
soundcloudnodejs.addTrack(track, function (err, track) {
...
console.log("addTrack, track: ", track);
console.log("permalink_url --> " + track.permalink_url);
});
干杯。