0

我想通過Ajax從Facebook頁面獲取事件。Facebook登錄由於應用程序,訪問令牌不起作用

但是不應該有用戶的登錄過程。出於這個原因,我試圖通過遵循this page的文檔來實現「作爲應用程序登錄」。

我被

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

令牌得到正確的訪問然而,當我嘗試查詢Facebook的圖形API與此訪問令牌我得到一個空的結果集。

這是一個示例請求;

https://graph.facebook.com/FAN_PAGE/events?access_token=ACCESS_TOKEN 

我知道結果集不應該爲空,因爲使用Graph Explorer的相同請求會返回正確的值。

即使像https://graph.facebook.com/FAN_PAGE/events?access_token=ACCESS_TOKEN_FROM_GRAPH_EXPLORER這樣的請求也能正常工作。

關於發生什麼事情的任何想法?我怎樣才能讓它正常工作?

+0

比較使用調試工具的兩個標記:https://developers.facebook.com/tools/debug – CBroe

+0

Debuuger僅顯示第一個標記的應用程序ID。還有一些其他令牌的附加信息。然而在facebook上,文檔說任何有效的令牌都足以查詢帖子或事件。不過,我仍然得到空的結果集。 – Sinan

回答

1

其實原因不是關於訪問令牌。原因是我想要獲取事件的頁面受到限制。這適用於不受限制的頁面。

經過一番研究,我發現要閱讀受限制頁面的事件(或帖子等),你需要一個用戶訪問令牌。你可以通過詢問用戶來獲得。 (在登錄流程中)

另一種在不提示登錄的情況下獲取此數據的解決方案是獲取「頁面訪問令牌」。您可以按照this鏈接生成頁面訪問令牌。

更加上Access Tokens

相關問題