[编辑完成/正确答案]
当用户当前所在国家/地区没有曲目时,deezer api 将标记“可读”设置为 falseSDK 播放器会自动跳过该曲目不可用(自动切换到 30 秒预览罢工>)。
国家之间的差异并不大。
如果您想使用 premium 用户的当前国家/地区而不是您服务器的位置,请不要忘记添加 &access_token= TOKEN 在每个请求中。如果您想确保为所有用户(Premium、Freemium 和 unlogged)提供完美的地理定位内容,最好从客户端而不是服务器端请求 api。
仅供参考:我们目前正在审查此行为以对其进行优化和标准化。
同一轨道可以有多个具有不同国家/地区权限的 ID(例如:http://www.deezer.com/fr/track/60978718)。如果您使用意大利令牌向艺术家请求前 5 名,而使用德语令牌请求相同的请求,有时会发生,您拥有相同的歌曲但不同的 id。一个原因是,根据国家/地区的不同,可能会发生相同的歌曲未获得同一唱片公司的许可。
关于 API 的行为:
http://api.deezer.com/2.0/track/18232696:该曲目在法国可用,但在德国不可用(抱歉,我没有英国示例)
来自德国的请求:
{"id":18232696,"readable":false,"title":"Charmaine","link":"http:\/\/www.deezer.com\/track\/18232696","duration":280,"track_position":6,"disk_number":1,"rank":1,"preview":"http:\/\/cdn-preview-1.deezer.com\/stream\/1451d74b90d3331db9e35a4071b4795c-0.mp3","artist":{"id":379393,"name":"Suckers","link":"http:\/\/www.deezer.com\/artist\/379393","picture":"http:\/\/api.deezer.com\/2.0\/artist\/379393\/image","radio":true},"album":{"id":1713045,"title":"Candy Salad","link":"http:\/\/www.deezer.com\/music\/suckers\/candy-salad-1713045","cover":"http:\/\/api.deezer.com\/2.0\/album\/1713045\/image","release_date":"0000-00-00"},"type":"track"}
来自法国的请求:
{"id":18232696,"readable":true,"title":"Charmaine","link":"http:\/\/www.deezer.com\/track\/18232696","duration":280,"track_position":6,"disk_number":1,"rank":1,"preview":"http:\/\/cdn-preview-1.deezer.com\/stream\/1451d74b90d3331db9e35a4071b4795c-0.mp3","artist":{"id":379393,"name":"Suckers","link":"http:\/\/www.deezer.com\/artist\/379393","picture":"http:\/\/api.deezer.com\/2.0\/artist\/379393\/image","radio":true},"album":{"id":1713045,"title":"Candy Salad","link":"http:\/\/www.deezer.com\/music\/suckers\/candy-salad-1713045","cover":"http:\/\/api.deezer.com\/2.0\/album\/1713045\/image","release_date":"0000-00-00"},"type":"track"}
关于 SDK 的行为:
SDK 播放器会自动跳过不可用的曲目。不可用的曲目在当前播放列表/队列中被视为“不存在”。
PS : 我是 Deezer 团队的一员