2010-06-09 149 views
4

在Facebook API(REST)中,您如何看待照片?有一個stream.addLike函數,但是你需要post_id,並且我沒有看到獲取照片的post_id的方法(與pid或object_id不一樣)。Facebook API:像一張照片

+0

不可能沒有與facebook的合作關係 – QuinnBaetz 2011-06-22 06:57:16

回答

0

我認爲實際的照片是類作爲一個wallpost相同類型的實體操作系統,所以像你可以獲得照片的stream_id一樣,它可以設置附加到照片的註釋stream.addLink found http://developers.facebook.com/docs/reference/rest/stream.addLike Here

通過photos.get方法獲取post_id,您應該可以通過stream.addLike設置註釋和對象。

希望這可以幫助你。

+0

您無法從photos.get獲得post_id,這是整個問題,您只能獲得object_id和pid。而且我沒有辦法從這些方面去post_id。 – QuinnBaetz 2010-06-09 16:48:12

+0

您是否嘗試過使用FQL進行跨表連接如此:SELECT pid,aid,owner,src,src_big,src_small,link,caption,created FROM photo WHERE pid IN(SELECT pid FROM photo_tag WHERE subject = ) AND aid = AND pid IN(pid) – RobertPitt 2010-06-10 15:54:01

+0

這沒有得到post_id。我發現這是不可能的,除非你與facebook有合作關係:D – QuinnBaetz 2010-06-11 21:11:50

2

現在,您可以使用Graph API通過POST向照片上的喜歡連接喜歡照片。這並不適用於以前的工作,但現在(2011/09/16)。並不確定它是什麼時候修復的,但是在Graph API推出之後,這是一個很長時間的疏忽。

1

首先當你添加這個時,你有一個上傳圖片的Id。 e.g

 var client = new FacebookClient(Access_Token); 

     JsonObject jsonResponse = client.Get("me/feed") as JsonObject; 
     string feed_ID = string.Empty; 
     foreach (var account in (JsonArray)jsonResponse["data"]) 
     { 
      feed_ID = (string)(((JsonObject)account)["id"]); 
      goto Next; 
     } 
    Next: { }; 

讓我們說你有你的uploeded最新畫面的ID 12345123_5488224848 現在要更新喜歡這幅畫。編寫下面的代碼。

 var client2 = new FacebookClient(Access_Token); 
     clientS.Post("12345123_5488224848/likes"); 

全部完成。在此之後檢查照片的狀態。

0
var client = new FacebookClient(Access_Token); 

    JsonObject jsonResponse = client.Get("me/feed") as JsonObject; 
    string feed_ID = string.Empty; 
    foreach (var account in (JsonArray)jsonResponse["data"]) 
    { 
     feed_ID = (string)(((JsonObject)account)["id"]); 
     goto Next; 
    } 
Next: { }; 
+2

請詳細說明您的答案.. – xxbinxx 2014-10-13 08:42:15