我有一个Flex应用程序,我将它移植到空中,除了根标签是WindowedApplication而不是Application外,两个应用程序是相同的。在Flex中工作但不在空中工作的Cookie
问题是基于cookie /会话的登录在浏览器中为flex应用程序工作,但不适用于空中应用程序。阅读文档说,cookie可用于播放,URLRequest manageCookies默认为true。
那么有没有人有任何想法,这是不是在空气中工作?
** * ** * ** * ** * *UPDATE* ** * ** * ** * ** * ****
我已经进一步调查,结果是Cookie在Air中工作,并在登录后用于所有后续请求,但是Cookie不能在应用程序关闭后继续存在,并且用户在重新启动时需要重新登录。
所以问题2,这是预期的行为?如果是这样,我会考虑将Cookie信息存储在EncrptedLocalStore中或其他东西。
** * ** * ** * ** * *UPDATE* ** * ** * ** * ** * ****
个干杯,
克里斯
Cookies是一个浏览器发明。在AIR中,没有浏览器,因此会假定没有Cookie。您可能能够将cookie值从您的返回请求中提取出来,以某种方式将其存储在本地,并将它们作为标题添加到每次远程调用中。或者寻找服务器端会话的替代方案。 – JeffryHouser 2010-12-11 15:58:51
空气建立在Webkit之上。这也不是什么在这里建议 - http://blogs.adobe.com/simplicity/2010/08/single-sign-on-and-http-cookies-in-air-applications.html – ChrisInCambo 2010-12-11 23:16:56
或在这里 - http:// help.adobe.com/en_US/air/reference/html/flash/net/URLRequestDefaults.html#manageCookies – ChrisInCambo 2010-12-11 23:18:03