silverlight调用 wcf的跨域问题~

wahcr8 2010-12-24 02:22:22
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 属性。有关详细信息,请参阅内部异常。

网上搜索半天没找到答案,,求救~~~
...全文
293 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangwuaowangzhen 2012-06-11
  • 打赏
  • 举报
回复
问一下,这两个XML文件到底当那里
heren5201314 2011-05-12
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 sp1234 的回复:]
引用 7 楼 wangzehong5200 的回复:

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

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

这个又正常,就是

怎么回事呀~


你图片中的那两个xml只是放在asp.net应用程序(虚拟目录为wade)中,哪里放在域名根目录下了啊?!
[/Quote]

域名根目录是哪里? 就是一直弄不懂到底这个文件放哪里才好!
阿非 2010-12-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 sp1234 的回复:]
引用 3 楼 sandy945 的回复:

还需要有 crossdomain.xml


只需要有一个,不需要两个。crossdomain.xml是为了兼容flash服务而设置的,不需要。
[/Quote]

谢谢指正
wahcr8 2010-12-24
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 sp1234 的回复:]

引用 3 楼 sandy945 的回复:

还需要有 crossdomain.xml


只需要有一个,不需要两个。crossdomain.xml是为了兼容flash服务而设置的,不需要。
[/Quote]
的确,我只放在了WXF的根目录下,没有放到locahost目录下,呵呵,谢谢你们,解决了。
  • 打赏
  • 举报
回复
你可以使用一个简单http调试工具,例如fiddler就可以,你可以看到访问svc时浏览器访问clientacesspolicy.xml的完整消息以及返回结果。
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wangzehong5200 的回复:]

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

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

这个又正常,就是

怎么回事呀~
[/Quote]

你图片中的那两个xml只是放在asp.net应用程序(虚拟目录为wade)中,哪里放在域名根目录下了啊?!

  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sandy945 的回复:]

还需要有 crossdomain.xml
[/Quote]

只需要有一个,不需要两个。crossdomain.xml是为了兼容flash服务而设置的,不需要。
wahcr8 2010-12-24
  • 打赏
  • 举报
回复
对了,我调试web项目是用VS调试,WCF是部署在IIS上的,但是我本地调试的时候 启动了

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

这个又正常,就是

怎么回事呀~
阿非 2010-12-24
  • 打赏
  • 举报
回复
你重新创建试一下,应该是你那里有点问题,从你现在的描述看不出来。

你也可以考虑将silverlight应用与wcf 部署在一起
wahcr8 2010-12-24
  • 打赏
  • 举报
回复
忘记贴了, crossdomain.xml这个文件在根目录也有,
<?xml version="1.0"?>
<!-- http://localhost/crossdomain.xml -->
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
还是不行~
阿非 2010-12-24
  • 打赏
  • 举报
回复
crossdomain.xml

<?xml version="1.0"?>
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
阿非 2010-12-24
  • 打赏
  • 举报
回复
还需要有 crossdomain.xml

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧