2015-12-15 13 views
10

我想將Web登錄會話轉移到我的Java桌面應用程序,以便我再次不想在我的桌面應用程序中登錄。我們可以從java桌面應用程序中讀取瀏覽器保存的cookie嗎?

一旦用戶登錄到我的Web應用程序,我在用戶系統上設置了一些cookie,一旦他啓動了我的獨立應用程序我想使用存儲在這裏的憑據將我的用戶登錄到應用程序而不要求重新登錄。

我的問題: - 我可以訪問cookie來讀取Auth令牌和其他參數嗎?這是適當的解決方案嗎? - 要達到上述要求,有沒有合適的解決方案。

對於我來說,Cookie看起來像是一個解決方案。但實質上,我想要在Web應用程序和獨立應用程序之間進行無縫集成。有什麼樣的解決方案可用於此?

+0

在瀏覽器之間共享cookie是不可能的。我認爲應用程序也是如此。 http://superuser.com/questions/271710/synchronize-cookies-between-browsers ..不確定如果您將瀏覽器嵌入到您的應用中,是否可以讀取cookie。 – Jayan

回答

1

不知道Skype的是怎麼做的,但它看起來像的We​​bEx和的GoToMeeting都依賴於那些需要允許自定義瀏覽器擴展以「與合作原生應用程序進行溝通」(Chrome中的示例設置)。

我找不到任何原生的JNLP,允許您閱讀瀏覽器cookie,因爲它應該是沙盒。但是,通過Java應用程序進行日誌記錄後,如果有幫助,您應該可以使用JNLP Persistence APIs

1

我認爲你應該做相反的事情,當你在網上登錄時,將一些會話ID轉移到桌面應用程序。

我的想法是在您的桌面應用程序的某個端口上運行本地主機服務器(使用Jetty)。當你在網上登錄時,它會調用一個到本地服務器的URL來傳輸會話ID。例如:

localhost:8888/authen?sessionID=123456 

然後本地服務器將獲得該sessionID參數。

如果您覺得這是適合您的,我會解釋更多細節

相關問題