2010-11-01 29 views
0

「SSL證書不可信」。對話框出現在Adobe AIR應用程序中。 如何在發生這種情況之前檢測到這種情況? (其實我想我的應用程序,以繞過警告...)在Adobe AIR中顯示消息之前,如何繞過或檢測SSL證書?

請檢查下面的代碼:

var request:URLRequest = new URLRequest('http://bit.ly/dzKg2q'); 
request.followRedirects = true; 
request.manageCookies = true; 
request.useCache = true; 
request.authenticate = false; // I set this as true, but it does not work either. 

var loader:URLLoader = new URLLoader; 

loader.addEventListener(Event.COMPLETE, function(event:Event):void { 
    trace('COMPLETE'); 
}); 
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function(event:Event):void { 
    trace('SECURITY_ERROR'); 
}); 
loader.addEventListener(IOErrorEvent.IO_ERROR, function(event:Event):void { 
    trace('IO_ERROR'); 
}); 


try{ 
    loader.load(request); 
}catch(e:SecurityError) { 
    trace(e); 
} 

非常感謝您的關注!

+0

我懷疑這甚至是可能的。這不會破壞首先有安全感的目的嗎? – DMKing 2010-11-01 19:50:40

+0

確實。繞過警告的唯一方法是將其設置爲可信證書。您可以通過在受信任證書列表中安裝站點的證書來完成此操作。 – Pace 2010-11-02 03:11:14

回答

0

最好的辦法是防止這個錯誤「在源頭」。

從您嘗試訪問的域的服務器上安裝已知證書頒發機構的有效SSL證書。

我懷疑是否有任何有效的方法來抑制這個錯誤

+0

謝謝你的回答。我以另一種方式解決這個問題 - 跟蹤所有重定向。 – Jason 2010-11-04 17:08:46

+0

我實際上並不瞭解「追蹤所有重定向」的含義。但是,您應該發佈自己的答案作爲答案並標記,然後接受您自己的答案 – JeffryHouser 2010-11-04 19:59:27

+0

我沒有使用自動重定向。 「request.followRedirects = false;」並通過檢查HTTPStatusEvent.responseHeaders手動進行重定向,以判斷url是https還是http。 – Jason 2010-11-05 17:39:03