如何为iis7 wcf服务创建/获取跨域策略?

时间:2009-08-24 22:28:01

标签: wcf cross-domain-policy

我的IIS7 + Silverlight 3.0 + WCF服务应用中缺少的链接是跨域策略。是否有关于如何创建/获取此类策略的说明。我知道有两个xml文件需要放在应用程序的Web根目录中。我将它放入其中,如何格式化它们,是否存在一些指示需要填写哪些字段的模板? msdn上有哪些说明解释了如何做到这一点?我只是出于查询谷歌的可能条款,任何指针都会受到赞赏。

谢谢, 布赖恩

2 个答案:

答案 0 :(得分:1)

嗯,我认为这可能就是答案,但其他答案肯定是值得讨论的,尤其是。因为我们无论如何都无法关闭线程......

http://timheuer.com/blog/archive/2008/04/06/silverlight-cross-domain-policy-file-snippet-intellisense.aspx

答案 1 :(得分:1)

Silverlight查找clientaccesspolicy.xml(特定于silverlight),如果没有找到它将返回到crossdomain.xml,例如flash也可以使用它。您只需要其中一个(套接字仅适用于clientaccesspolicy.xml,但webclient和http适用于两者)。

现在让我们坚持使用clientaccesspolicy.xml,因为有更少的警告,并且只添加了crossdomain.xml支持以赶上flash,因为像flickr这样的公共服务已经有了。

包含clientaccesspolicy.xml描述的DTD位于this page on MSDN

这个基本的例子应该是你的开始

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from>      
        <domain uri="*"/> <!-- Allows calls from every domain -->
      </allow-from>      
      <grant-to>      
        <resource path="/api" include-subpaths="false"/> <!-- Only allows domain/api? to be called nothing else including api.txt, api/foo etc... -->
      </grant-to>      
    </policy>
  </cross-domain-access>
</access-policy>