2012-12-11 133 views
3

我在考慮一個場景,我需要您的意見,這是否甚至可能。如何:非Facebook用戶發佈到Facebook頁面牆

我有一個正常的網站,在這個網站上我有一個表格,通過發送表格,它也應該發送到一個特定的Facebook頁面。作爲正常頁面狀態更新。現在我不想強迫我的用戶註冊Facebook以發送表單。

通過閱讀這裏的一些文章和Facebook的API,我認爲這可能是可能的,但我有一個問題我解決不了:

  1. 的Facebook應用程序創建
  2. 管理員的獲取用戶令牌
  3. 獲取頁面訪問令牌張貼在牆上頁

這些點(1-3)應該工作正常,但這裏是我的問題:

如果我是正確的,令牌會在一段時間後過期 - 如何獲得一個不會過期的令牌?或者還有其他方法可以解決這個問題嗎?

這是工作的代碼張貼的Facebook頁面上:

$attachment = array(
'access_token' => 'BACyul4fRfyEmI3xwMDs..........................', 
'message'=> "Hello Test" 
); 
$result = $facebook->api('/'.$page_id.'/feed', 'POST', $attachment); 

回答

1

How is it possible to get a token which does not expire? Or are there some other ways to solve this problem?

這是不可能得到一個令牌不會過期,但他們可以延長。閱讀here瞭解更多信息。但最好的做法是看看他們是否已經使用SDK登錄過,如果他們沒有重定向他們登錄。就這麼簡單。

您不需要在附件中添加access_token,facebook SDK將爲您處理該問題。因此,這是罰款:

$attachment = array(
'message'=> "Hello Test" 
); 
$result = $facebook->api('/'.$page_id.'/feed', 'POST', $attachment); 

更多參數可在此documentation

+0

所以我的用戶需要擁有一個Facebook帳戶?或者我作爲管理員需要擴展令牌?有沒有別的辦法? – user1895720

+0

當我不添加'access_token'如你所說我得到這個錯誤:'致命的錯誤:未捕獲的OAuthException:(#200)用戶還沒有授權應用程序執行此操作' – user1895720

+0

嗯,那麼我想添加它。是的,爲了代表用戶發佈任何內容到您的牆上,用戶必須擁有一個Facebook帳戶。 –

相關問題