2014-03-28 76 views
1

首先,我在我的網站上使用60天的用戶訪問令牌獲取了Facebook頁面/組提要。但是我想要一個非到期訪問令牌,所以試圖使用應用程序訪問令牌。應用程序訪問令牌遊覽非常容易只需要使用它的「應用程序ID |祕密密鑰」 format.But從Facebook開發者頁面,我碰到這個職位 - https://developers.facebook.com/docs/facebook-login/access-tokens/有以下 -生成和理解Facebook應用程序訪問令牌

To generate an app access token, you need to make a Graph API call: 

GET /oauth/access_token? 
    client_id={app-id} 
    &client_secret={app-secret} 
    &grant_type=client_credentials 

所以我做服務器這邊調用這個URL並獲得了一個具有「|」格式的訪問令牌但左側的應用程序ID與之前相同,但右側有另一個與應用程序密鑰不同的密鑰!那是什麼意思?這個令牌是否也過期了?以及上述調用生成密鑰時爲什麼會更改?並且我可以在客戶端調用中使用此生成的令牌,而不會有任何風險,即如果有黑客獲得它,它們可以不會造成危害?

請指引我走向正確的方向儘快&是什麼讓&使用的應用程序訪問token.Thanks事先最好的辦法

回答

1

app_id|app_secret版本總是工作(並且還怎麼FE的PHP SDK創建一個應用程序訪問令牌內部)。

這個令牌是否也過期了?

而應用程序訪問令牌沒有任何有效期限。

以及上述調用生成密鑰時爲什麼會發生變化?

的該令牌第二部分是不的app_secret - 整件事簡直就是爲你的應用程序的訪問令牌,你APP_ID作爲第一部分。第二部分是「隨機」(好吧,不知何故,FB計算出來的東西都是散列的,但不管你是否擔心)。

我可以在客戶端調用中使用此生成的令牌嗎?如果有黑客獲得它,它們可以不會造成任何危害?

當然中不 - 它一個應用程序訪問令牌,可以用來做一切可以在你的應用程序的名稱來完成。

應用程序訪問令牌是永遠不會用於客戶端代碼,無論它如何獲得。

+0

hm如此改變的密鑰是使它更安全,即使它在服務器端被調用? –

相關問題