我有一个很好的。
前天调用URLRequest时,浏览器中的会话cookie被发送回服务器进行身份验证。突然发出URLRequest时,浏览器不再发送会话cookie。当我在浏览器窗口中打开URLRequest中的副本和粘贴网址时,它可以正常工作。
你知道问题可能是什么......?
它与localhost有关吗?也许当从flash向localhost发送请求时,会话cookie不会被发回....但它现在已经推迟了好几个星期......我想不出我能改变什么......非常奇怪
提前感谢您的帮助 马丁
答案 0 :(得分:0)
Flash中加载http地址的代码是:
var request:URLRequest;
var vars:URLVariables = new URLVariables();
var urlLoader:URLLoader;
request = new URLRequest(url);
request.method = URLRequestMethod.GET;
urlLoader = new URLLoader();
urlLoader.addEventListener(Event.COMPLETE, handleComplete);
urlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
urlLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
urlLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
try {
urlLoader.load(request);
} catch (error:Error) {
LogUtil.debug("Unable to load Payment Data." + error);
}
后端用ruby编码,我进行以下调用:
输入“SESSION ID:#{session [:user_id]}”
答案 1 :(得分:0)
简短的回答是,Flash不知道或控制浏览器是否将cookie附加到HTTP请求。 Flash只是调用浏览器的网络堆栈并稍后获得响应; Flash不会自己建立网络或处理cookie本身。所以我最好的选择可能是浏览器设置,服务器端的东西?不知道真的,但我认为AS3不会参与其中。