Silverlight到WCF跨域异常,但正在成功读取clientaccesspolicy.xml

Silverlight到WCF跨域异常,但正在成功读取clientaccesspolicy.xml,silverlight,wcf,cross-domain,Silverlight,Wcf,Cross Domain,clientaccesspolicy.xml: <?xml version="1.0" encoding="utf-8"?> <access-policy> <cross-domain-access> <policy> <allow-from http-request-headers="*"> <domain uri="*" /> </allow-from>

clientaccesspolicy.xml

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from http-request-headers="*">
        <domain uri="*" />
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true" />
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy>
<cross-domain-policy>
  <allow-http-request-headers-from domain="*" headers="*" secure="true" />
</cross-domain-policy>
这里没什么特别的,这是数百万WCF服务用来允许Silverlight客户端访问它们的标准设置。不幸的是,此设置在我部署到的实时环境中不起作用。用于测试部署的预生产环境被设置为相同的活动环境(或者系统管理员声称的那样),并且在那里一切都很好,这就是为什么我如此困惑的原因

我让一个系统管理员使用HTTPDebuggerPro跟踪Silverlight客户端的请求,它显示客户端正在检索
clientaccesspolicy.xml
crossdomain.xml
,没有问题(HTTP状态200)。但是,在请求这些文件后,客户端尝试调用服务,并立即收到
跨域异常

我还尝试让系统管理员将WCF服务URL添加到Silverlight客户端所在的框中Internet Explorer的“允许的站点”列表中(根据最后一段的最后一句),但也没有成功


clientaccesspolicy.xml是否放置在域的根目录中?

clientaccesspolicy.xml是否放置在域的根目录中?

这两个文件都位于作为虚拟应用程序承载服务的子目录中(C:\inetpub\wwwroot\MyServices映射到IIS中的/MyServices,crossdomain.xml位于C:\inetpub\wwwroot\MyServices\crossdomain.xml)。是否可以尝试将它们移动到域的根目录下?根据MSDN,应该是“在承载服务的域的根目录下”的位置,以配置服务以允许跨域访问。”这两个.xml文件都位于C:\inetpub\wwwroot\和C:\inetpub\wwwroot\MyServices\中。这两个文件都位于作为虚拟应用程序承载服务的子目录中(C:\inetpub\wwwroot\MyServices映射到IIS中的/MyServices,crossdomain.xml位于C:\inetpub\wwwroot\MyServices\crossdomain.xml)。是否可以尝试将它们移动到域的根目录下?根据MSDN,应该是“在承载服务的域的根目录下”的位置,以配置服务以允许跨域访问两个.xml文件都位于C:\inetpub\wwwroot\和C:\inetpub\wwwroot\MyServices\中。您是否找到了解决方案?我面临的是同等的解决方案?您是否找到了同等的解决方案?我面临的是同等的解决方案