2012-04-22 123 views
2

我試圖張貼到一個Facebook頁面使用 PHP。 我創建了一個Facebook應用程序,並 我能張貼到普通賬戶FEED,使用非常有用的代碼我發現:Daily Automatic post in facebook users wall發佈從Facebook應用程序的Facebook頁面沒有登錄Facebook的

來概括它:

$facebook = new Facebook(array('appId' => 'xxxxxxxx', 
           'secret' => 'xxxxxxxxxxxxxx',)); 

$post = array('message' => 'Message to user'); 

$post_id = $facebook->api("/$USER_ID/feed", "post", $post); 

有任何不需要的access_token都沒有。 我已經通過PAGE(以及來自常規帳戶)向我的應用授予了以下權限:publish_stream,manage_pages

但是...這似乎不適用於Facebook PAGE。 我似乎無法從我的應用發佈到它。 我曾嘗試以下,和其他的組合,但Facebook不會返回任何錯誤消息,也沒有帖子:

$feed = '/MYPAGEID/feed'; 

$post_id = $facebook->api($feed, "post", $post); 

你的幫助是非常感謝!

回答

3

在爲Page object的文檔,它說:

發帖時在牆上(即崗位作爲 頁面,而不是當前用戶)冒充的頁面,你必須使用ACCESS_TOKEN頁面 的manage_pages和publish_stream權限

要執行弗洛翼操作的頁面,而不是當前 用戶,則必須使用頁面的訪問令牌,令牌不 用戶訪問常用的讀圖API對象。此訪問令牌可以是 ,通過向具有 manage_pages權限的HTTP GET發送到/ USER_ID /帳戶來檢索。這將返回用戶具有管理 訪問權限的頁面列表(包括 應用程序配置文件頁面)以及這些頁面的access_tokens。另外,您也可以 通過發出 HTTP GET到/ PAGE_ID得到一個單一的,特定的,一頁一頁的訪問令牌?場=與manage_pages ACCESS_TOKEN 許可,如上所述。除非另有說明,發佈到頁面還需要 的發佈權限。

此外,一定要檢查Authenticating as a Page教程。

+0

感謝Nitzan,剛剛嘗試過,但問題是當PAGE用戶註銷時,這個TOKEN不再有效,我不能再發布它了。我需要的就像在「普通」Facebook帳戶中一樣 - 即使用戶已註銷,我的應用也可以發佈到其Feed。 – 2012-04-22 12:41:40

+1

沒有辦法讓頁面訪問令牌沒有登錄的用戶使用他自己的有效訪問令牌。即使通過服務器進行調用,用戶也可以使用頁面,就像在Facebook界面中一樣。 – 2012-04-22 12:45:04

+0

謝謝Nitzan,我明白。令我困擾的是,我可以更新**個人資料** Facebook帳戶,**沒有任何access_token **,但我無法更新** Page ** Facebook帳戶。我想知道有沒有辦法解決這個問題。爲什麼** Page **不同於** Pofile ** – 2012-04-22 12:53:23

0

如果你想發佈到你的頁面一定要得到正確的存取權限從您的管理員帳戶令牌。 轉到宣誓頁關facebook生成正確的標記。去獲取訪問令牌,然後選擇你想要的選項。

http://developers.facebook.com/tools/explorer

+0

感謝Jonathan,剛剛嘗試過,但問題是當PAGE用戶註銷時,此TOKEN不再有效,我無法發佈到它。我需要的就像在「普通」Facebook帳戶中一樣 - 即使用戶已註銷,我的應用也可以發佈到其Feed。 – 2012-04-22 12:39:20

+0

非常感謝,我找到了我的答案 - 請參閱其他答案的評論 – 2012-04-22 15:45:40

相關問題