4

我有一个 Flex 应用程序,它访问需要 SSL 客户端身份验证的 URL。这些请求在 Firefox 和 Chrome 中运行良好。Chrome 和 Firefox 显示选择用户证书的提示,然后请求成功完成。在 Internet Explorer 中没有提示。请求返回:

错误 #2032:流错误。网址:https://MyServer/Path/test.txt

我通过在我的 index.html 文件中创建一个标签来解决这个问题,该标签将安全端点连接到一个空白 JavaScript 文件,提示输入证书。加载空白 JavaScript 文件后,一切都在 Flex 应用程序中运行。这样做的问题是应用程序将访问多个需要用户证书的端点;一些我不知道的。他们没有我可以加载的已知空白端点(由于 JS 异常,我不想将他们尝试加载的 URL 放入脚本标签中)。

关于如何让 Internet Explorer 在对安全端点的初始请求时提示我输入用户证书的任何想法?

4

1 回答 1

0

我没有对此进行测试,但是您可以尝试以下方法:

  • 使用ExternalInterface从您的 Flex 应用程序中调用一些 JS。此 JS 将向您希望验证证书的网站发出请求。例如,您可以在隐藏的 iframe 中加载网站的主页。

  • 监听 iframe 的 'load' 事件以在 iframe 内容加载时通知 flex 应用程序 ( iframe.addEventListener('load', someFunction, false);)。同样,使用 ExternalInterface 通知 Flex 应用程序。

我希望它有所帮助。

于 2014-03-13T18:18:21.800 回答