我有一个我大约一年前开发的应用程序而且我是 像这样获取Facebook帐户:
facebookClient = new DefaultFacebookClient(access_token);
Connection<CategorizedFacebookType> con = facebookClient.fetchConnection("me/accounts", CategorizedFacebookType.class);
fbAccounts = con.getData();
直到大约一个月前它才能正常工作,但现在又回归了 fbAccounts列表为空。那是为什么?
我希望从restfb-1.6.2.jar转到restfb-1.6.9.jar会 帮助但没有运气,两者都空了。
我错过了什么?
编辑,提供我在此API中遇到的其他错误的代码。以下代码用于工作:
String id = page.getFbPageID(); // (a valid facebook page id)
FBInsightsDaily daily = new FBInsightsDaily(); // an object holding some insights values
try {
Parameter param = Parameter.with("asdf", "asdf"); // seems like the param is required
JsonObject allValues = facebookClient.executeMultiquery(createQueries(date, id), JsonObject.class, param);
daily.setPageActiveUsersDaily((Integer)(((JsonArray)allValues.opt("page_active_users_daily")).getJsonObject(0)).opt("value"));
...
这会引发以下异常:
com.restfb.json.JsonException: JsonArray[0] not found.
at com.restfb.json.JsonArray.get(JsonArray.java:252)
at com.restfb.json.JsonArray.getJsonObject(JsonArray.java:341)
再次,这曾经工作正常,但现在抛出这个。
答案 0 :(得分:1)
您需要用户的manage_pages
权限才能访问其管理页面列表 - 一年前我不确定您是否这样做 - 检查您是否从用户那里获得了该权限
{编辑} 一些见解指标也已弃用,您检查的具体值可能不再存在 - https://developers.facebook.com/docs/reference/fql/insights/应该包含现在可用内容的详细信息
尝试在Graph API Explorer中手动检查您的查询,以消除代码中的任何问题,并希望获得您的SDK可能会吞咽的更详细的错误消息