我正在使用Facebook Graph API的当前版本2.3。我正在使用Graph API资源管理器。我在API资源管理器中为user_likes生成了一个访问令牌,并为API资源管理器应用程序授予了这些权限。
然而,当我输入:
me?fields=user_likes
在Url文本框中提交,我只获取公开个人资料,而不是用户喜欢。
我也没有任何错误。
当我在代码中使用授予我的ASP.NET MVC Web应用程序的访问令牌(在沙盒模式下)尝试此操作时,我得到一个例外:
Facebook.FacebookOAuthException: (OAuthException - #100) (#100)
Tried accessing nonexisting field (user_likes) on node type (User)
at
Facebook.FacebookClient.ProcessResponse(HttpHelper httpHelper, String responseString, Type resultType, Boolean containsEtag, IList`1 batchEtags)
at
Facebook.FacebookClient.Api(HttpMethod httpMethod, String path, Object parameters, Type resultType)
at
Facebook.FacebookClient.Get(String path, Object parameters, Type resultType) at
Facebook.FacebookClient.Get(String path, Object parameters)
at
Facebook.FacebookClient.Get(String path)
at
OAuthFacebookExample.Controllers.HomeController.FacebookCallback()
in
c:\temp\OAuth\rnd\OAuthFacebookExample\OAuthFacebookExample\Controllers\HomeController.cs:line
以下是相关的代码段:
dynamic userInfo =
client.Get("/me?fields=id,first_name,last_name,email,user_likes");
答案 0 :(得分:4)
me?user_likes不是有效的端点。我想你想用我?fields = user_likes这也是无效的(没有名为user_likes的字段)
请查看Facebook用户喜欢的文档: https://developers.facebook.com/docs/graph-api/reference/user/likes/
如您所见,您要呼叫的端点是我/喜欢。
我希望它有所帮助。