日期:2014-05-17  浏览次数:20481 次

silverlight调用 wcf的跨域问题~
wcf服务正常,在IIS上运行 
http://localhost/WcfServiceLib.Service1.svc 一切正常,根目录下也有clientacesspolicy.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>

然后我在调试的时候 调用它 就出错了,

尝试向 URI“http://localhost/WcfServiceLib.Service1.svc”发出请求时出错。这可能是由于试图以跨域方式访问服务而又没有正确的跨域策略,或策略不适用于 SOAP 服务。您可能需要与该服务的所有者联系,以发布跨域策略文件并确保该文件允许发送 SOAP 相关的 HTTP 标头。出现此错误也可能是由于使用的是 Web 服务代理中的内部类型而没有使用 InternalsVisibleToAttribute 属性。有关详细信息,请参阅内部异常。

网上搜索半天没找到答案,,求救~~~

------解决方案--------------------
crossdomain.xml
XML code

<?xml version="1.0"?>
<cross-domain-policy>
  <allow-access-from domain="*" />   
</cross-domain-policy>

------解决方案--------------------
探讨

对了,我调试web项目是用VS调试,WCF是部署在IIS上的,但是我本地调试的时候 启动了

这个有影响吗?但是 我运行

这个又正常,就是

怎么回事呀~