none
请问 crossdomain.xml 和 clientaccesspolicy.xml 的区别 RRS feed

  • 问题

  • 为了sliverlight能够跨域访问,通常需要添加跨域策略文件。

    但是在可以查到的很多资料中,对这两个文件的功用说的都不是很清楚,始终有几个疑惑希望能有人解答:

    1、这两个文件真的是可以任选其一吗?它们有什么共同点和区别?

    2、这两个文件分别需要被放在服务端还是客户端?

    3、不管后台服务部署在IIS还是其它环境中,这两个文件都可以使用吗?

     

    2008年7月29日 2:37

答案

  •  

    1.区别上面回答过啦

    2.可以根据需要放在服务端

    3.都可以使用,可以根据需要选择,很多网站都设置了crossdomain.xml 不一定非要在IIS

    比如

    http://www.yahoo.com/crossdomain.xml

    2008年7月29日 4:01
    版主
  • 补充一下在服务端放置跨域访问文件的经验。

     

    SilverLight要实现跨域访问,必须在服务端被访问域的直接域名下,配置 clientaccesspolicy.xml( 或 crossdomain.xml文件,即可以访问 http://{domainName}/clientaccesspolicy.xml

     

    具体来说,如果后台服务部署在IIS中,默认是放在“inetpub/wwwroot”目录下;如果后台服务是部署在Tomcat中,默认是放在“tomcat\webapps\ROOT目录下

     

    2008年8月21日 7:02

全部回复

  •  日日野 写:

    为了sliverlight能够跨域访问,通常需要添加跨域策略文件。

    但是在可以查到的很多资料中,对这两个文件的功用说的都不是很清楚,始终有几个疑惑希望能有人解答:

    1、这两个文件真的是可以任选其一吗?它们有什么共同点和区别?

    2、这两个文件分别需要被放在服务端还是客户端?

    3、不管后台服务部署在IIS还是其它环境中,这两个文件都可以使用吗?

     

     

    这两个文件并不都需要放在域根下,但我更喜欢用clientaccesspolicy,因为他可以用来设置Socket.

    它们的区别说明在B2的文档中

     

    Silverlight supports two types of security policy files:

    • Flash policy file - the existing crossdomain.xml policy file used by Adobe Flash. This policy file can only be used by the WebClient and HTTP classes in the System.Net namespace. A Flash policy file must allow access to all domains to be used by the Silverlight 2 runtime.

    • Silverlight policy file - the Silverlight policy file that can be used by the WebClient and HTTP classes in the System.Net namespace and also by the sockets classes in the System.Net.Sockets namespace. This policy file has a different format than the Flash policy file.

    All in all, Silverlight policy can be used by all kinds of Connection between Client and Server.

    Refer to your question, if you only put one of them onto the root, cross-domain-access is also allowed, but for crossdomain.xml CrossDomain for Sockets doesn't allow.

    2008年7月29日 3:53
    版主
  •  

    1.区别上面回答过啦

    2.可以根据需要放在服务端

    3.都可以使用,可以根据需要选择,很多网站都设置了crossdomain.xml 不一定非要在IIS

    比如

    http://www.yahoo.com/crossdomain.xml

    2008年7月29日 4:01
    版主
  • 补充一下在服务端放置跨域访问文件的经验。

     

    SilverLight要实现跨域访问,必须在服务端被访问域的直接域名下,配置 clientaccesspolicy.xml( 或 crossdomain.xml文件,即可以访问 http://{domainName}/clientaccesspolicy.xml

     

    具体来说,如果后台服务部署在IIS中,默认是放在“inetpub/wwwroot”目录下;如果后台服务是部署在Tomcat中,默认是放在“tomcat\webapps\ROOT目录下

     

    2008年8月21日 7:02
  • 他们是怎么样生成的啊?

    如果说我在合成某个文件的时候,他是怎么生成的呢?

    2011年10月20日 3:26