How about using fql? You are no longer worried because you need to get post_id from the stream:
{"query1":"SELECT post_id, actor_id, created_time, message FROM stream WHERE filter_key in (SELECT filter_key FROM stream_filter WHERE uid=me() AND type='newsfeed') AND created_time<=now() LIMIT 5 ","query2":"SELECT post_id, id, fromid, time, text, user_likes, likes FROM comment WHERE post_id IN (SELECT post_id FROM #query1) LIMIT 5 ","query3":"SELECT id, name, pic_square FROM profile WHERE id IN (SELECT actor_id FROM #query1) or id IN (SELECT fromid FROM #query2)"}
Consult a graph API explorer for the graph ( July 2013 Breaking Changes migration options are included), it works as expected (of course, you need to grant read_stream permission).
source share