我一直在尝试使用 Soundcloud API 从组中添加和删除歌曲。我正在使用 soundcloud-python 包装器使我能够轻松地做到这一点。
我已经让两个 Auth 流程都正常工作(使用 OAuth2 或直接使用用户凭据),并且我可以使用 python 客户端通过执行如下调用来获取有关登录用户等的信息:
print client.get('/me').username
这向我表明我已经正确地通过了授权,正如我所说,我已经通过这两种方法完成了这项工作。
我的问题是,当我尝试发出以下请求时,该请求作为示例提供以从组中添加/删除歌曲,无论组中是否已存在轨道,我总是会收到 404 错误(来自 Soundcloud 中的示例API 文档,在“为组贡献声音”下):
# contribute track to group
group = client.put('/groups/%d/contributions/%d' % (group.id, track.id))
如果我通过客户端对象对 /groups/{group-id}/contributions/{track-id} 执行任何功能,我总是会收到 404 错误。如果我未通过身份验证,我将收到 401 错误。我已经 100% 确定我使用了工作组 ID/轨道 ID 组合,方法是通过 API 控制台测试它们,并在必要时对值进行硬编码以证明操作。
这让我感到困惑 - 如果我在 API 控制台(在 Soundcloud API 网站上)中使用与 python 包装器失败的相同形式的 URI,并且我通过 OAuth 进行了身份验证,那么 GET/PUT 和 DELETE 都会按预期运行在通过 soundcloud-python 包装器失败的相同 group_id 和 track_id 上。
其他人对此有任何问题吗?他们有这个工作吗?
非常感谢您的帮助!