2014-04-01 43 views
7

Facebook提供有關oauth登錄參數的一些文檔。Facebook oauth授權URL和參數選項

Login Dialog OAuth 2

的參數是:

  • 的client_id =您的應用程序ID
  • REDIRECT_URI =您的應用程序網站網址
  • 顯示=頁面,彈出窗口,iframe中,異步觸摸。如何顯示登錄。
  • scope =權限名稱。您的應用允許用戶授予您的應用的權限。
  • state =返回到您的應用程序的響應中包含的字符串。
  • response_type =代碼或令牌或兩者。根據授權流程以不同方式使用。

是否有更多有關不同類型的oauth功能及其參數的信息?

我想知道如何構造oauth的URL。我知道一些配置。例如:

https://www.facebook.com/dialog/oauth? 
    client_id=YourAppID 
    &redirect_uri=The URL that you designated in your App Settings for your App 
    &response_type=token //Whether you want a `code` returned, or a `token` returned, or both 
    &scope=publish_stream // scope prompts the user for the type of permissions being asked for 

我看到了一個討論中表現出這樣的:

https://graph.facebook.com/oauth/authorize? 
    client_id=123456789 
    &redirect_uri=http://example.com/ 
    &scope=publish_stream,share_item,offline_access,manage_pages 

注意網址的區別的:

/dialog/oauth? 

/oauth/authorize? 

什麼authorize做?它是否授予權限而不是提問權限?這個文件在哪裏?

回答

1

https://graph.facebook.com/oauth/authorize也是登錄人 - 就像對用戶進行身份驗證並從用戶那裏獲取權限是否通過應用訪問請求的權限。

oauth/authorize是圖形API調用。 我認爲主要的差異可能是當你想手動建立登錄流程時,你應該使用/ oauth/authorize ..否則如果你使用javascript/Apps api提供的faciss它使用/ dialog/oauth。應用程序通常需要確認來自「登錄」對話框的響應是由啓動它的同一個人完成的。如果您使用的是Facebook的JavaScript SDK,它會自動執行這些檢查,因此無需任何操作,假設您只是從瀏覽器撥打電話。我們可以通過應用appsecret_proof來使圖形API調用安全。