2010-12-06 29 views
0

我正在開發一個具有Java Server作爲後端的FLEX應用程序。將PHP會話ID傳遞給FLEX應用

我需要的是:
-FLEX應用程序只能在用戶登錄時才能使用;
-FLEX應用程序還需要知道它記錄了哪個用戶,因爲它會顯示關於他的特定內容;
- 我需要在每個Web服務調用上執行身份驗證;

但是,網頁正在開發使用PHP,以及登錄系統。

經過一番挖掘,我發現我可以使用PHP會話ID來驗證每個Web服務調用,通過使用php-java-bridge,因此PHP和Java都可以共享相同的會話。

我的問題是,我不知道Flex應用程序如何獲取當前PHP會話ID。我知道可以通過flashvars傳遞它,但我認爲它不安全。

如果有人有其他的解決方案,甚至沒有使用PHP的會話ID,我會很感激。

在此先感謝。

回答

0

我看不到Flex直接訪問PHP會話ID的好處;你確定這就是你需要的嗎?

說的Flex創建的SWF文件,意在對客戶端軟件。而PHP和Java通常用作服務器端軟件。儘量不要將您的Flex應用程序視爲服務器端程序。

的方式大多數Web應用程序處理的會話是服務器設置在客戶端上一些餅乾。瀏覽器會自動將該cookie與每個請求一起傳遞;服務器使用該cookie值將請求同步到服務器端會話。我知道ColdFusion和Java的工作是這樣的,我假設PHP使用類似的機制。

每當你的SWF(AKA Flex應用程序),使遠程服務器的請求,該請求將包括由服務器設置的所有Cookie,就好像它是一個正常的瀏覽器請求。服務器應自動將Flex請求同步到服務器端會話。

這有幫助嗎?

0

你可以有一個PHP網頁,將通過柔性使用HttpService的調用,返回$ _SESSION [「用戶名」]或會話變量。如果返回空。停止加載程序。希望它是有道理的。因爲我做了同樣的事情..

+0

謝謝!其實,這是有道理的。所以,如果我使用SSL,使用這個解決方案沒有安全問題,我是對的嗎? – Gustavo 2010-12-07 16:59:25