我的 IIS7 + Silverlight 3.0 + WCF 服务应用程序中缺少的链接是跨域策略。是否有关于如何创建/获取此类政策的说明?据我了解,有两个 xml 文件需要放入应用程序的 Web 根目录中。我在其中放入什么,如何格式化它们,是否存在一些模板来指示需要填写哪些字段?msdn 上是否有说明解释如何执行此操作?我几乎没有可能的术语来查询谷歌,任何指示将不胜感激。

谢谢,布莱恩

有帮助吗?

解决方案

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

现在让我们继续使用 clientaccesspolicy.xml,因为注意事项较少,并且添加 crossdomain.xml 支持只是为了赶上 f​​lash,因为像 flickr 这样的公共服务已经有了这样的支持。

包括 clientaccesspolicy.xml 描述的 DTD 位于 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>

其他提示

好了,我想这可能是答案,但其他的答案是肯定欢迎讨论,ESP。因为我们不能关闭线程但无论如何...

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

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top