Silverlight客户端访问策略问题

时间:2010-09-22 02:18:21

标签: silverlight wcf web-services soap

我有一个wcf webservice,我从我的silverlight应用程序调用,使用https,它工作正常,没有任何问题。现在我要从silverlight客户端添加一个旧服务(soap / asmx)的新引用,这样就可以了。然后,当我尝试访问该服务时,出现以下错误:

尝试向URI“http://localhost/OldService.asmx”发出请求时出错。这可能是由于尝试在没有适当的跨域策略的情况下以跨域方式访问服务,或者是不适合SOAP服务的策略....

注意:asmx服务使用的是http而不是https。

我的clientaccesspolicy文件如下:

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from>
        <domain uri="*"/>
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>

2 个答案:

答案 0 :(得分:0)

我认为您只需要使用启用Silverlight的服务。 Silverlight仅适用于* .svc服务,因此您无法在Silverlight项目中使用* .asmx服务。

答案 1 :(得分:0)

我实际上已经解决了这个问题,我只是将它们全部改为https。