2012-02-28 271 views
3

我有一個多線程應用程序,它從Parallel.ForEach循環中調用一些URL。對於這些URL中的一些,我需要忽略一些我不應該使用的錯誤證書。忽略HttpWebRequest調用中的不良SSL證書

ServicePointManager.ServerCertificateValidationCallback似乎提供了所有證書驗證回調的全局處理。

任何人都可以提供一個關於如何選擇性地接受多線程Parallel.ForEach()調用中的錯誤證書的建議嗎?

回答

1

看來最好的方法是讓網址的HashSet忽略。如果url不是你想要忽略的URL集合中的某個,那麼你可以處理壞的證書。

private Hashset<string> UrlWhiteList 
... 
private bool shouldIgnore(string url){ 
return UrlWhiteList.Contains(url); 
}