如何使用 facebook fql 获取消息未知收件人的电子邮件或姓名而不是 0?
Posted
技术标签:
【中文标题】如何使用 facebook fql 获取消息未知收件人的电子邮件或姓名而不是 0?【英文标题】:How to get a message unknown recipients email or name instead of 0 with facebook fql? 【发布时间】:2012-09-22 16:59:49 【问题描述】:如何使用 facebook fql 获取未知收件人电子邮件或姓名而不是 0 的消息?
我写了一些 php 代码来导出我 facebook 邮箱中的消息。 我正在使用 FQL。
这是我在 API tool explorer 中使用的 flq 多重查询,用于获取给定消息,包含完整的消息和收件人数据。
"threads": "SELECT thread_id FROM thread WHERE folder_id IN (0,1,4)", "messages": "SELECT thread_id, message_id, author_id, created_time, body FROM message where thread_id IN (SELECT thread_id FROM #threads) and message_id='249...' ORDER BY created_time ASC", "recipients_id": "SELECT thread_id,recipients FROM thread WHERE thread_id IN (SELECT thread_id FROM #messages)", "recipients": "SELECT uid, username, name, email, profile_url, pic FROM user WHERE uid IN (SELECT recipients FROM #recipients_id)"这是我得到的:
"name": "recipients_id", “fql_result_set”:[ "thread_id": "26854010378569", “收件人”:[ 4735804651, 0, 0 ] ]由于我之前从经典电子邮件客户端向我的 Facebook 地址发送了这条测试消息,我知道谁是这条消息的发件人。 4735804651 是我的 Facebook ID,收件人字段中的最后两个值(零)指的是发件人和另一个不是我朋友的 facebook 用户。 在我发送的原始电子邮件中,我输入了我的@facebook.com 电子邮件和另一个@m.facebook.com 用户电子邮件 每个人都收到了消息。 当我从 FB 界面读取它并飞过发件人姓名时,我可以看到发件人电子邮件地址。 如何通过 facebook api 或 FQL 获取?
谢谢。
【问题讨论】:
【参考方案1】:您首先必须获取 folder_id 消息在哪里://0 inbox, 1 otubox, 4 updates//
SELECT folder_id, name, unread_count, viewer_id FROM mailbox_folder WHERE viewer_id=me()
当得到 folder_id 你可以得到 thread_id :
SELECT thread_id FROM thread WHERE folder_id = x AND viewer_id=me()
通过这个thread_id,你可以得到所有的消息:
SELECT message_id, author_id, body, created_time, viewer_id FROM message WHERE thread_id = xxxxxxx
所有总结:
SELECT message_id, thread_id, author_id, body, created_time, viewer_id FROM message WHERE thread_id in (SELECT thread_id FROM thread WHERE folder_id in(SELECT folder_id FROM mailbox_folder WHERE viewer_id=me()) AND viewer_id=me())
为此,您需要一个应用令牌
你可以在这里试试:https://developers.facebook.com/tools/explorer
【讨论】:
以上是关于如何使用 facebook fql 获取消息未知收件人的电子邮件或姓名而不是 0?的主要内容,如果未能解决你的问题,请参考以下文章
Facebook:如何使用图形 API 或 FQL 获取最近签到的好友列表
如何使用图形 api/FQL 从 facebook 获取过去/结束的公共事件?