尽管用户有曲目,但 SoundCloud API 返回 0 首曲目
SoundCloud API returning 0 tracks despite user having tracks
我正在尝试获取特定用户的曲目,但对于某些用户,即使他们有曲目,SoundCloud API return 也是一个空列表。
例如,从他的track_count
可以看出,以下用户有 17 首曲目
http://api.soundcloud.com/users/1250904?client_id=XXXXXX
如果我尝试获取他的踪迹,它return是一个空列表
http://api.soundcloud.com/users/1250904/tracks?client_id=XXXXXX
用户是否可以通过 API 设置他们的歌曲不可用? user上有字段可以区分这个吗?
这很有趣。使用我自己生成的正常 CLIENT_ID,我得到的结果与您相同。此外,如果我尝试点击 API 以获取有关特定曲目的信息,我会收到 403 Forbidden 错误:
HTTP GET https://api.soundcloud.com/tracks/149151252.json?client_id=XXXXXX
出现这种情况可能有以下几个原因:
- 用户已达到所有曲目的下载限制。
- 用户已禁用 oEmbed,导致 API 请求到 403(请参阅 this post)。
- 用户以某种方式设法阻止正常API访问他们的足迹。
我倾向于选择 3。我在 中对其他 CLIENT_ID 进行了一些测试,尝试使用 youtube-dl 应用程序使用的 CLIENT_ID。使用他们的 _IPHONE_CLIENT_ID
,我能够看到所有 17 首曲目的信息。如果我对该密钥的理解是正确的,它是 SoundCloud 用于其 iOS 应用程序的主 API 密钥,这可以解释为什么该密钥有效而其他密钥无效。
此用户必须启用某些设置才能阻止标准 API 访问他们的曲目。
我正在尝试获取特定用户的曲目,但对于某些用户,即使他们有曲目,SoundCloud API return 也是一个空列表。
例如,从他的track_count
http://api.soundcloud.com/users/1250904?client_id=XXXXXX
如果我尝试获取他的踪迹,它return是一个空列表
http://api.soundcloud.com/users/1250904/tracks?client_id=XXXXXX
用户是否可以通过 API 设置他们的歌曲不可用? user上有字段可以区分这个吗?
这很有趣。使用我自己生成的正常 CLIENT_ID,我得到的结果与您相同。此外,如果我尝试点击 API 以获取有关特定曲目的信息,我会收到 403 Forbidden 错误:
HTTP GET https://api.soundcloud.com/tracks/149151252.json?client_id=XXXXXX
出现这种情况可能有以下几个原因:
- 用户已达到所有曲目的下载限制。
- 用户已禁用 oEmbed,导致 API 请求到 403(请参阅 this post)。
- 用户以某种方式设法阻止正常API访问他们的足迹。
我倾向于选择 3。我在 _IPHONE_CLIENT_ID
,我能够看到所有 17 首曲目的信息。如果我对该密钥的理解是正确的,它是 SoundCloud 用于其 iOS 应用程序的主 API 密钥,这可以解释为什么该密钥有效而其他密钥无效。
此用户必须启用某些设置才能阻止标准 API 访问他们的曲目。