當我做了FQL查詢類似如下(其中<userId>
是我的FB朋友的Facebook的ID):爲什麼這個FQL調用失敗?
SELECT type, post_id, created_time, updated_time, source_id, message, description, attachment FROM stream WHERE filter_key in (SELECT filter_key FROM stream_filter WHERE uid = <userId> AND type = 'newsfeed') AND is_hidden = 0 LIMIT 250
,我發現了以下錯誤:
"error": {
"message": "(#606) uid in the where clause must be the session user",
"type": "OAuthException",
"code": 606
}
這似乎是錯誤的我,因爲examples in the stream_filter docs明確使用這個例子。
如果獲得stream_filter
的唯一方法是致電WHERE uid=me()
,那麼WHERE
條款究竟有什麼意義?
這是我的訪問令牌的權限問題嗎?
用戶不應該有權訪問其他用戶的訪問令牌。我不是想代表我的朋友採取行動,我只是試圖獲得他的新聞提要。 – howettl
用戶不應該,但你正在開發的應用程序可以。如果你只是想獲得他的新聞(他可以在主頁上查看他的朋友的帖子),那麼這仍然是一個隱私問題。即使他讓所有人都公開,即使是他不是朋友的人,他仍然可以通過API和FQL訪問自己的新聞。您無法使用您自己的訪問令牌訪問它。通過任何常規手段沒有真正的方法來看朋友自己的新聞。你只能看到你自己的新聞提要。但是如果你試圖讓自己的行爲公開化,你可以。 – JayNCoke
我已經更新了我的答案,以表明您可以獲取其他用戶自己生成的項目的訂閱源。你仍然無法看到他們的朋友和他們關注的頁面生成的物品的個人新聞源。 – JayNCoke