在我的Flex應用程序中,我需要對j_security_check表單進行身份驗證(這看起來像一種流行的身份驗證方式),在HTTP POST中提供j_username
和j_password
字段作爲參數請求。我打算用一個簡單的HTTPService(我知道的其他選項是URLLoader,但它提供了相同的結果)這樣做。發送POST請求後,我等待jsessionid
作爲SetCookie
的響應。但是,我收到一個html頁面,該頁面應該在我收到jsessionid
後纔會顯示。如何從使用Flex的302 HTTP狀態響應獲取cookie HTTPService
這裏是什麼,實際上是在HTTP數據包而言是這樣的:
- 我POST請求
[baseurl]/j_security_check
含j_username
和j_password
- HTTP狀態含有
jsessionid
爲SetCookie
- 302響應GET請求(我沒有發送它!)從我的申請到
[baseurl]/login.jsp
只包含jsessionid
與前一個數據包一起收到。 - 一個HTTP狀態200響應,包含一個html頁面,應該在成功登錄後在Web瀏覽器中查看該頁面。
我需要jsessionid
的值與另一個基於SOAP的Web服務一起用作身份驗證方法。但我似乎無法獲得它 - Flex HTTPService默默捕獲302響應併發送下一個GET;之後,曲奇無處可尋。
..但是,cookie肯定被緩存在Flex的某處,因爲它被提供給來自任何HTTPService實例的對該服務器的所有進一步請求!
我不知道它是否會使用web服務。因此我的問題是:如何在Flex中獲得這個cookie的價值?