[英]restfb: Writing a facebook application with java (using the new graph api)
我正在嘗試使用Java tomcat和RestFB編寫一個Facebook應用程序。
restfb文檔顯示以下內容:
我認為我可能正在看錯指令,這是針對facebook連接或apps.facebook.com/app_name中除實際Facebook應用程序以外的其他任何內容。
非常感謝您提供有關此問題的任何相關信息。 我只是試圖創建一個簡單的Facebook應用程序,以打印用戶名。
通常,在獲取用戶的acces令牌后,我可以執行以下操作:
FacebookClient facebookClient = new DefaultFacebookClient(MY_ACCESS_TOKEN);
User user = facebookClient.fetchObject("me", User.class);
out.println("User name: " + user.getName());
我的問題是如何正確獲取用戶的訪問令牌? 在我在帖子頂部顯示的信息中,它表明我需要提出2個請求。 第一個用於代碼,另一個用於訪問令牌。 訪問令牌的請求實際上向用戶顯示了我的應用密鑰,因為每次我將他轉發到另一個頁面時,用戶都可以輕松查看get和set參數。
所以我想我在這里很迷路。
請幫忙! :)
謝謝
根據這些說明,我需要兩次重定向用戶頁面。 首先獲取代碼,然后獲取訪問令牌。 用戶可以看到這兩個重定向,因此,他可以輕松地從get參數中看到facebook應用程序密鑰和秘密密鑰。 我如何確保這些步驟對用戶隱藏?
如評論中所述,這些是訪問Facebook圖形API所需采取的步驟。 但是,要回答第二個問題:
“如何確保對用戶隱藏了這些步驟?”
用戶的瀏覽器僅應執行第一個請求。 Facebook的目的是要確保它是為用戶的Facebook身份提供的唯一授權。 根據您正在編寫的應用程序,您可以使用重定向URL指向您指定的默認重定向URL,或者在您的網站上指定用於檢索令牌的自定義URL。 第一種方法通常由獨立應用程序(例如移動設備)使用,它們可以控制瀏覽器如何處理重定向。 第二種方法將用於基於Web的自定義應用程序。 收到訪問令牌后,您將在代碼中執行第二項操作(使用您喜歡的http api),而不是通過瀏覽器。 將access_token URL上的重定向與身份驗證URL上指定的重定向URL進行比較。 Facebook僅將其用於驗證,並且不會在成功完成請求后執行實際的重定向。
以下是高級步驟:
REST API已棄用。 您應該改用JavaScript和Graph API-此處有一篇不錯的文章: http : //ocpsoft.org/opensource/creating-a-facebook-app-setup-and-tool-installation/ (三部分系列,非常詳細:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.