当前位置:主页 > 设计教程 > Flash > 正文

有关flash无法读取FireFox中Cookie的Bug解决方法

来源:|作者:|时间:2009-01-04|人气:|编辑:

  我之前写过文章“[AS3]有关Flash无法读取Firefox中的Cookie的Bug ”,关于这个Bug目前有一个变通的解决方法:

/** 
* @author Kinglong 
* @version 0.1 
*/  
  
package PRoject.util {  
      
    import com.klstudio.util.StringUtil;  
    import flash.external.ExternalInterface;  
      
    public class UploadUtil{  
          
        public function UploadUtil() {                        
        }  
          
        public static function fixNoIEBug(url:String):String {  
            var index:int = url.indexOf("?");  
            url += (index == -1)?"?ie=":"&ie=";  
            url += (isIE())?"1":"0" + getCookies();   
            return url;  
        }  
              
        public static function isIE():Boolean {           
            if (!ExternalInterface.available) {  
                return true;  
            }  
            return ExternalInterface.call("navigator.appVersion.indexOf","MSIE") != -1;  
        }  
          
        public static function getCookies():String {  
            if (!ExternalInterface.available) {  
                return "&c_userid=&c_passWord=";  
            }  
            var result:String = "";  
            var cookieStr:String = ExternalInterface.call("function(){return document.cookie;}");  
            var cookies:Array = cookieStr.split(';');  
            var count:uint = 0;  
            for (var i:uint = 0; i < cookies.length; i++ ) {  
                var items:Array = cookies[i].split('=');  
                if (StringUtil.trim(items[0]) == "c_userid" || StringUtil.trim(items[0]) == "c_password") {  
                    result += "&" + StringUtil.trim(items[0]) + "=" + StringUtil.trim(items[1]);  
                    count ++;  
                }  
                if (count >= 2) {  
                    break;  
                }  
            }  
            return result;            
        }  
          
    }  
      
}

看上面的代码就知道原理很简单,就是先判断是否为IE浏览器,如果是的话,服务端就通过正常的方式来读取Cookie值,否则的话,就通过客户端JS方法把cookie取到,然后再通过url传给服务端。

    最近更新
    简而精致的MILKO牛奶包装欣赏

    简而精致的MILKO牛奶包装欣赏

    分 类: 包装设计
    日 期: 2015-07-14
    人 气: 93

    Irina Vinnik精美的童话书籍设计欣赏

    Irina Vinnik精美的童话书籍设计欣赏

    分 类: 封面设计
    日 期: 2015-07-14
    人 气: 113

    LOnde戏剧艺术中心2015-2016宣传册设计

    L'Onde戏剧艺术中心2015-2016宣传册设计

    分 类: 画册设计
    日 期: 2015-07-14
    人 气: 94

    耐克篮球探索主题立体字设计

    耐克篮球探索主题立体字设计

    分 类: 字体设计
    日 期: 2015-07-14
    人 气: 97

    耐克Kobe release系列视觉设计

    耐克Kobe release系列视觉设计

    分 类: 平面设计作品
    日 期: 2015-07-13
    人 气: 266