SoundCloud cocoa 包装器无法在没有帐户的情况下访问资源

问题描述 投票:0回答:1

尝试访问 SoundCloud API (https://api.soundcloud.com/tracks.json) 中的公共端点,将帐户的 nil 发送到 SoundCloudAPI 库。

API响应:

error: Error Domain=NXOAuth2HTTPErrorDomain Code=401 "HTTP Error: 401" UserInfo=0x7556ff0 {NSLocalizedDescription=HTTP Error: 401}

我引用了他们的 GitHub 存储库的一般使用指南(https://github.com/soundcloud/CocoaSoundCloudAPI/blob/master/GeneralUsage.md):

无需账户(nil)即可调用此方法,实现匿名 请求或使用您从 [SCSoundCloud 帐户] 获得的帐户。

正如我在 http://developers.soundcloud.com 中看到的,我可以在没有 OAuth 的情况下使用资源。

有什么想法吗?

ios cocoa soundcloud
1个回答
4
投票

您必须将

?consumer_key=APP_KEY
附加到请求的 URL,例如:
https://api.soundcloud.com/tracks.json?consumer_key=APP_KEY

我在他们有点废弃的 Google 群组页面中找到了这一点的确认:https://groups.google.com/forum/?fromgroups#!topic/soundcloudapi/ptBbe_TWSj8

这似乎是 github 上一般使用页面的一个奇怪的遗漏,除非在他们的开发者网站上出现错误,否则也被遗漏了。

编辑

我确实遇到了关于此的另一条信息,开发者网站确实提到了

client_id
GET 参数,这与consumer_key不同,但是,如果我们能够确认是否使用
consumer_key
client_id,那就太好了
对于未经授权的公共 API 调用。

SoundCloud API 库在收到 nil 帐户参数后没有将其(无论哪一个合适的)附加到 URL 中,这似乎也有点奇怪。如果用户帐户对象丢失,自动切换到正确的 api 调用似乎是合乎逻辑的。

© www.soinside.com 2019 - 2024. All rights reserved.