我有一个JAX-RS(Rest)Web服务,它只支持通过SSL访问。使用Flex访问JAX-RS
如果我尝试通过IE提供相应参数来访问它,我会得到正确的响应。
现在,使用Flex的HTTPService组件是这样的:
<s:HTTPService id="httpsService"
url="https://myIp:myHTTPSPort/JAXRS/jaxrs/GetText"
resultFormat="text"
result="httpsService_resultHandler(event)"
fault="httpsService_faultHandler(event)">
<s:request>
<text>My Text</text>
</s:request>
</s:HTTPService>
故障事件开始与 “HTTP请求错误” faultstring。
我已经添加了此跨域文件到Web服务项目的WEB-INF文件夹:
<?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="flexApplicationIp" secure="true"/>
</cross-domain-policy>
...但正如你可能已经猜到了没有工作。
我在我的web服务主机上有一个自我生成的HTTPS证书,所以我不知道是否需要将它添加到Flex的某处。
任何想法?
在“flexApplicationIp”你在真正的IP地址或域名投入?如果域是证书中的完全限定域?我一直在我们的公司网络上遇到这个问题,证书是server.abcom,在浏览器中我们可以从“服务器”得到它,但它做了重定向,服务客户端不会遵循重定向,并拒绝该证书为错误的域名。 – mezmo 2011-05-23 14:22:27
我把真正的IP地址 – RedEagle 2011-05-23 14:43:54