如何在flex中使用HttpService进行HTTPS调用

时间:2010-01-13 00:27:32

标签: flex actionscript-3

我想使用HttpService进行https调用。当网址为http时,我的代码工作正常,但是当我可以将网址发送到https时,会出现以下错误:

[RPC Fault faultString =“访问url的安全性错误”faultCode =“Channel.Security.Error”faultDetail =“Destination:DefaultHTTP”]

我该如何拨打Https?

此致 Zeeshan

2 个答案:

答案 0 :(得分:3)

您的SWF是否托管在同一个域中?如果是这样,它是否也通过HTTPS提供?如果对这两个问题的答案都是肯定的,那么您需要在托管要调用的服务的服务器的根目录下使用crossdomain.xml文件。您可以查看有关该主题的this Adobe article

例如,这将允许example.com上通过HTTP服务的SWF访问您服务器上的HTTPS服务:

<强>的crossdomain.xml

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM
    "http://www.adobe.com/xml/dtds/cross-domain-policy.dtd">

<cross-domain-policy>
    <allow-access-from domain="example.com" secure="false"/>
</cross-domain-policy>

确保可以从域的根目录访问crossdomain.xml文件(例如:http://myserver.com/crossdomain.xml)。

希望有所帮助。

答案 1 :(得分:2)

确保证书在浏览器中有效或被接受。

提示:在Windows下,无论您使用哪种浏览器,都必须在Internet Explorer中接受该证书。