2

我正在使用 Graph API 的 /me/music.listens 端点玩,我让它工作得很好。除了我似乎无法弄清楚如何让实际的艺术家信息回来。我看到了这首歌,甚至这张专辑(尽管这似乎也有点不一致)。但从来没有任何艺术家信息。

在此处查看开发者资源管理器:https ://developers.facebook.com/tools/explorer/?method=GET&path=me%2Fmusic.listens

没有艺术家信息。这只是没有退回吗?我看不到如何在字段参数列表中指定它。FB 的行动文档充其量是参差不齐的,所以我想我会在这里尝试。

谢谢!

4

3 回答 3

1

您可以使用歌曲 id 在图形 API 上检索艺术家信息:

https://graph.facebook.com/song_id?fields=data {音乐家}

例如:https ://graph.facebook.com/697975930266172?fields=data {音乐家}

于 2014-09-25T10:00:00.777 回答
1

我想出了一个解决办法。看起来 Facebook 实际上并没有返回艺术家信息。所以你必须使用 Spotify 查找服务(http://developer.spotify.com/technologies/web-api/lookup/)。

为了进一步细分,您首先从 FB 拉出 music.listens 提要,您将获得如下信息:

                 (
                   [song] => Array
                        (
                         [id] => 381659191902248
                         [url] => http://open.spotify.com/track/**2Vv27Gc5k5GgGW9jgtj1CS**
                         [type] => music.song
                         [title] => Follow Through
                        )
                    )

从那里,您需要获取粗体的轨道 ID。

最后,通过调用 Spotify 获取歌曲元数据:http ://ws.spotify.com/lookup/1/.json?uri=spotify:track:2Vv27Gc5k5GgGW9jgtj1CS

您将收到专辑名称、艺术家信息等。

如果有人知道更好的方法,请让我知道!

于 2013-05-18T14:21:55.340 回答
0

我知道的老问题,但是您可以使用 Graph API 的“字段扩展”在同一请求中检索相关信息,例如歌曲标题和艺术家标题。

例如 - 最后 10 首歌曲

me?fields=music.listens.limit(10){data{song{title,id},musician{id,title}}}

要从歌曲或音乐家实体中检索更多信息,只需调整请求的字段。

注意,这需要user_actions.music权限

于 2016-07-18T14:48:09.943 回答