为了安全原因考虑,同flash一样,Silverlight对跨域访问也做了严格的限制。要解决这个问题,可以参考帮助中的说明,将两个xml文件保存在网站根目录,比如C:/Inetpub/wwwroot中即可(其实保存其中一个就可以了
在 Silverlight 使用 WebService 、WCF、WebRequest 等进行数据通讯的时候,需经常需要面对跨域访问的问题。Silverlight 2 Beta 1 提供了队跨域访问的支持,并且和Flash一样支持 crossdomain.xml 策略文件。到网上查了一些相关资料,发现该策略文件内容大概如下:
<?xml version="1.0"?>
<cross-domain-policy>
<!-- http://192.168.0.1/crossdomain.xml -->
<allow-access-from domain="www.aaa.com" />
<allow-access-from domain="*.bbb.com" />
<allow-access-from domain="192.168.1.1" />
</cross-domain-policy>
上例表示允许来自www.aaa.com, *.bbb.com, 192.168.1.1的 Silverlight 跨域访问本机数据(FTP,HTTP,HTTPS方式)。
若需要允许来自任意域的 Silverlight 访问本机数据则文件内容如下:
<?xml version="1.0"?>
<!-- http://localhost/crossdomain.xml -->
<cross-domain-policy>
<allow-access-from domain="*" />
</cross-domain-policy>
写好以上文件以后,将文件拷贝到服务器的根站点下即可。
[ Silverlight]crossdomain.xml 解决 Silverlight 跨域访问的问题
最新推荐文章于 2016-12-06 16:41:12 发布