我正在使用FacebookMobile API获取和排序用户的朋友列表,并正在使用FlashDevelop中的ActionScript Air Mobile项目。我目前正在使用FacebookMobile.batchRequest()来获取我想要的信息,它工作正常。AS3 Facebook API:访问令牌错误消息
工作代码:传递给handleFriendsList()
var installedBatch:Batch = new Batch();
installedBatch.add("me/friends?fields=installed,name", handleFriendsList);
FacebookMobile.batchRequest(installedBatch);
产生的JSON对象包含了用户的朋友列表。每个朋友都包含一个ID和一个名字字段。只有安装了应用程序的朋友才会包含已设置为“true”的已安装字段。我想用FacebookMobile.api()将其压缩到一行,但是当我尝试获取并出错时。
尝试代码:
FacebookMobile.api("me/friends?fields=installed,name", handleFriendsList);
这将导致在同一个JSON对象传递给handleFriendsList(),而是我得到一个错误抱怨我没有积极的访问令牌。
错误:
message = "An active access token must be used to query information about the
current user."
奇怪的是,我只用FacebookMobile.api()得到这个错误,当我问安装和name字段时才会发生。 FacebookMobile.api()工作得很好,当我只要求“我/朋友”而不指定安装的和名称字段。
有谁知道为什么会发生这种情况?
在为Facebook开发时请注意。他们经常更新Graph API。跟踪他们的开发者页面。 – 2013-04-09 08:52:43