2012-04-09 89 views
0

我需要授權我的Flash遊戲(運行在Facebook上)用戶對我的遊戲服務器。我可以從客戶端上的Facebook上獲取他們的數據,例如id,訪問令牌等(我正在使用Flash Facebook API),但我不確定如何在我的遊戲服務器上授權他們(例如,進行登錄與數據庫查詢)。我心中有一個場景:flash facebook遊戲認證

如果我可以在客戶端(我已經這樣做)和服務器(例如,我嘗試過的重定向URL)上從Facebook獲得相同的訪問令牌,但是似乎不起作用),那麼我可以輕鬆比較這兩個令牌(與用戶ID一起),從而授權用戶。

任何想法如何實現這個或類似的東西?

更新簡單一點,我想捕獲服務器端從Facebook返回給客戶端(它可以是一個簡單的PHP腳本,分析URL標記參數)返回的令牌。接下來,將其存儲在服務器上的數據庫中,當客戶端查詢服務器時,我可以進行比較。

+0

嘗試Facebook的支持/論壇/谷歌? – 2012-04-09 02:00:18

+0

這裏問這個問題有什麼不對? – Alex 2012-04-09 02:24:51

回答

0

爲什麼你需要做這個比較?,沒有必要比較來自同一來源的兩個條目。

例如,如果comparrison是爲了確定用戶是在您的客戶端網頁上還是在Facebook上使用會話時間登錄一次,請檢查php。

如果您需要比較任何值,我不能理解如果你想從同一個來源查詢兩次。

如果您想要更新某些與Facebook無關的值,那麼我將創建第二個數據庫,當應用程序運行它時,它會將您自己的數據輸入到客戶端的數據庫中,它可以首先檢查它。

這似乎是你在這裏更加關注服務器端的問題,我建議添加更多的信息,爲什麼你需要這些查詢並添加「PHP」到你的主題相關標籤。

+0

我需要在兩端進行比較的原因是,儘管我在客戶端上獲取用戶信息,但我也需要在服務器上登錄用戶。我已經使用套接字服務器傳輸數據,所以我不想使用PHP作爲後端解決方案,除非它是一個簡單的腳本。例如,如果我手動調用圖API的oauth(即不使用Flash API),則可以傳遞驗證後令牌將到達的重定向URL,然後我可以在服務器端解析該URL。我想知道我是否可以用Flash API做類似的事情。 – Alex 2012-04-09 03:02:53

+0

簡單一點,我想在服務器端獲取從Facebook返回給客戶端的令牌。接下來,將其存儲在服務器上的數據庫中,當客戶端查詢服務器時,我可以進行比較。 – Alex 2012-04-09 03:10:47

1

我想我找到了解決方案。這在this answer中有解釋。基本上,當我在客戶端接收到一個訪問令牌時,我會將它發送到服務器(我的遊戲服務器),然後我將在Facebook上驗證它(即https://graph.facebook.com/[email protected])。如果它返回用戶數據,那麼它是正確的標記,否則它是無效的。