Q&A:关于Silverlight和WCF通信开发的问题

2016-08-20 11:07:07来源:http://wengyuli.blog.51cto.com/44136/586674作者:wengyuli人点击


前段时间,分享了一些Silverlight和WCF通信的博文,很感谢不少朋友针对文章提出了各种问题,使得我在求解和答疑的路上也获得了很多,由于平日工作较忙,无法实时跟大家交流,请将在WCF和Silverlight开发方面的问题以评论的形式提出,我会尽我所能,希望能帮到大家。谢谢!


常见问题1:Silverlight访问wcf服务时的策略文件如何设置?

回答:
Silverlight访问服务需要取得服务器的一份策略文件,相当于服务器给了Silverlight一个授权,目前Silverlight最新的版本是会从主机的80端口获取这个文件,也就意味着我们需要在默认的wwwroot下放置这个文件,但是根据WCF绑定方式(TCP,HTTP)的不同,策略文件内容不一样。
basicHttpBinding绑定方式时:


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



netTcpBinding绑定方式时:


<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*" />
</allow-from>
<grant-to>
<socket-resource port="4502-4534" protocol="tcp" />
</grant-to>
</policy>
</cross-domain-access>
</access-policy>



如果你的WCF同时涉及到这两个服务:


<?xml version="1.0" encoding="utf-8"?>
<access-policy>
<cross-domain-access>
<policy>
<allow-from http-request-headers="*">
<domain uri="*" />
</allow-from>
<grant-to>
<socket-resource port="4502-4534" protocol="tcp" />
<resource path="/" include-subpaths="true"/>
</grant-to>
</policy>
</cross-domain-access>
</access-policy>



最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台