2012-03-03 22 views
3

我有一个来自Facebook的用户数据库。我想使用批量请求获取他们的数据(兴趣和朋友的生日)。现在我可以为1个用户提出1个批量请求。但考虑到没有。我的应用程序中的用户数量肯定会达到极限。针对多个用户的Facebook批量请求

我想知道是否有任何方式在一个批处理请求

让多个用户的数据我尝试以下,但它没有工作

“的access_token”:“USER_A_ACCESS_TOKEN”, 批=“方法”:“GET”,“access_token”:“USER_A_ACCESS_TOKEN”,“relative_url”:“我/朋友”}, {“method”:“GET”,“access_token”:“USER_B_ACCESS_TOKEN” relative_url“:”me/friends“} ]

对于userB访问令牌,我也得到了res ULTS用户A的访问令牌

回答

5

按照批量请求页面

The Batch API is flexible and allows individual requests to specify their own 
access tokens as a query string or form post parameter. In that case the top 
level access token is considered a fallback token and is used if an individual 
request has not explicitly specified an access token. 

改写原来的尝试应该是这样的

卷曲-F“=的access_token USER_A_ACCESS_TOKEN” -F“批次中的文档= [{“method”:“GET”,“relative_url”:“me/friends?access_token = USER_A_ACCESS_TOKEN”},{“method”:“GET”,“relative_url”:“me/friends?access_token = USER_B_ACCESS_TOKEN”}] '

原来的USER_A_ACCESS_TOKEN将作为后备e与任何其他access_tokens错误

+1

请注意,Facebook的文档声称,您还可以在“json”部分中包含access_token(例如,在“批量”JSON内的每个逻辑请求中)。不幸的是,Graph API似乎存在一个长期存在的错误,使得它无法工作。 (http://stackoverflow.com/q/10396911/114558)所以,这里显示的方法,其中'access_token'附加到URL,似乎是唯一的工作配置。 – rinogo 2015-02-12 06:52:19