2015-11-11 89 views
0

我正在處理一個將用戶登錄到遠程網站的AIR應用程序。在會話期間的某些時刻,用戶可能需要在瀏覽器中打開一個頁面。當他們這樣做時,他們沒有根據瀏覽器登錄,因此用戶必須重新登錄。當他們在應用程序中登錄時,我試圖通過瀏覽器登錄它們。如何通過AIR的瀏覽器登錄用戶?

我讀過AIR可以管理的cookie。我認爲這樣做,但我不確定。有沒有辦法與瀏覽器共享cookie?這是管理cookie設置嗎?

如果這些方法都正在發生的事情,我可以創造一個MX:HTML實例或舞臺Web視圖和雙登錄與?階段webview應該使用系統瀏覽器是否正確?當調用navigateToURL()時將啓動相同的瀏覽器。

UPDATE:
它看起來像跨瀏覽器的cookies are shared除了在少數情況下,如Firefox和Linux。再次更新,餅乾通常比最初認爲的shared less。看起來我可以通過創建StageWebView實例來登錄用戶。我將不得不再次檢查以確保它是默認瀏覽器而不是內部webkit。

UGH。它看起來像桌面上的StageWebView使用internal webkit。雖然有一個useNative屬性。但即使我可以使用本機系統瀏覽器,我也不知道如何登錄某人,因爲我認爲我不能發佈到它。我想我只能設置一個URL,這將是一個得到...

...它看起來像我可以創建一個post請求,然後使用navigateToURL()加載該request。這將是hacky,但它可能工作。

ARG。它看起來像AIR不通過navigateToURL()support post

回答

1

我不知道爲什麼你要通過思考只是使用POST使事情變得複雜?!您可以通過發送一些臨時標識符(令牌,散列,...)來使用GET,就像某些網站用戶的新聞通訊一樣,只要點擊該新聞簡報中的一個簡單鏈接就可以登錄,通過您的用戶已被成功識別後,你的服務器端腳本,那麼當用戶打開瀏覽器該鏈接可以驗證信息,然後創建你的餅乾......

希望能有所幫助。

+0

這可能工作。我有一個登錄到WordPress的應用程序。當用戶想要訪問他們的WordPress網站時,他們必須重新登錄。如果可能的話,我會嘗試看看是否有我可以使用的令牌。它是一個cookie,然後我可以發送一個GET調用? –

+1

@ 1.21千兆瓦令牌只是由服務器端腳本生成的一些「信息」(在非常有限的時間內使用一次,它只是一個臨時信息,例如作爲用戶的會話信息存儲在數據庫中)。 ..)將在用戶在瀏覽器中使用該鏈接時進行驗證。我確實找到了一個WP [插件](https://wordpress.org/plugins/autologin-links/),它與我的意思完全相同,但在任何情況下,您都必須確保該流程以避免安全問題。 .. – akmozo

相關問題