2012-05-27 77 views
2

我正在嘗試構建一個後端rails應用程序,該應用程序轉到公共facebook頁面,並拉下任何新帖子。但是當然,我遇到了身份驗證問題。Userless Oauth(Facebook)

當使用提供的示例訪問令牌here時,我能夠完成我想要的任何操作。

HTTParty.get("https://graph.facebook.com/#{name}/posts?access_token=#######################################") 

但顯然這個訪問令牌會過期。我沒有任何前端組件到這個應用程序,因爲它不打算由用戶管理或訪問。我只需要基本權限,因爲我只對公共頁面感興趣。

如果此認證步驟可以自動執行,我很樂意對我的登錄信息進行硬編碼。

有誰知道我如何獲得一個基本的oauth訪問令牌,而不需要用戶點擊「批准」按鈕?

+0

爲什麼我所有的帖子最近都被拒絕投票?我覺得我提供了足夠的解釋我的問題,我不? – BananaNeil

回答

5

你應該嘗試的客戶端憑證的OAuth流程: http://developers.facebook.com/docs/authentication/applications/

這使您可以在應用程序的client_idclient_secret獲得訪問令牌傳遞。請求如下:

https://graph.facebook.com/oauth/access_token? 
    client_id=YOUR_APP_ID 
    &client_secret=YOUR_APP_SECRET 
    &grant_type=client_credentials 

access_token在響應中返回。然後,您可以使用此訪問令牌將請求作爲您的應用程序發送,而不是代表任何單個用戶發送請求。

我不積極,這有能力檢索公共網頁,因爲你打算,但它是值得一試。

+0

應用程序訪問令牌可用於查詢頁面的詳細信息,只要頁面上沒有任何人口統計限制(因此,您是正確的) – Igy

+0

這是完美的。謝謝。 – BananaNeil