尝试访问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的情况下使用的资源。
有什么想法吗?
答案 0 :(得分:4)
您必须将?consumer_key=APP_KEY
附加到请求的网址,例如: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不同但是,如果我们能够确认是否使用{{ 1}}或consumer_key
用于未经授权的公共API调用。
在接收到nil帐户参数时,SoundCloud API库不会将此(通常适用)附加到URL,这似乎有点奇怪。如果缺少用户帐户对象,自动切换到正确的api调用似乎是合乎逻辑的。