我试图让与 Soundcloud 连接的用户能够使用他们的 SC 帐户创建存储在 Soundcloud 上的新播放列表(集)。很基础。作为一个测试用例,我正在测试的示例几乎完全取自Soundcloud 开发文档,除了我添加了不同的声音 ID。
<script src="http://connect.soundcloud.com/sdk.js"></script>
<script>
// initialize client with app credentials
SC.initialize({
client_id: 'MY_CLIENT_ID',
redirect_uri: 'http://localhost.local/~****/sc/callback.html'
});
// initiate auth popup and create new playlist
SC.connect(function() {
SC.get('/me', function(me) {
console.log(me.username);
});
var tracks = [12573606].map(function(id) { return { id: id }; });
SC.post('/playlists', {
playlist: { title: 'My Playlist', tracks: tracks }
});
});
SC.post 的副本及其回复如下:
POST https://api.soundcloud.com/playlists 422 (Unknown Error) sdk.js:1
window.SC.SC.Helper.merge._xhrRequest sdk.js:1
window.SC.SC.Helper.merge._request sdk.js:1
window.SC.SC.Helper.merge._apiRequest sdk.js:1
window.SC.SC.Helper.merge.post sdk.js:1
(anonymous function) localhost.local:21
(anonymous function) sdk.js:1
f.onreadystatechange sdk.js:1
XHR finished loading: "https://api.soundcloud.com/playlists". sdk.js:1
window.SC.SC.Helper.merge._xhrRequest sdk.js:1
window.SC.SC.Helper.merge._request sdk.js:1
window.SC.SC.Helper.merge._apiRequest sdk.js:1
window.SC.SC.Helper.merge.post sdk.js:1
(anonymous function) localhost.local:21
(anonymous function) sdk.js:1
f.onreadystatechange sdk.js:1
Uncaught TypeError: object is not a function sdk.js:1
(anonymous function) sdk.js:1
f.onreadystatechange
我尝试了几种不同的解决方案,并自己创建了 url 请求并将其与我的 client_id 一起发布,但没有任何成功。
我也注意到开发文档中的不一致。我注意到在开发文档中有一个创建播放列表 JS SDK 示例,但是在 APIGEE ( API ) 控制台中没有引用 post /playlists 请求,只是 /playlists 用于获取...这不是吗甚至存在于当前的 Soundcloud api 比?
我想到的另一件事是,由于这是一个 422 错误,您只能在用户最初使用 sdk 上传曲目时将曲目添加到播放列表吗?
有没有其他人遇到过这个问题?有没有人找到任何解决方案?
谢谢,