Silverlight 5 客户端访问策略.xml

标签 silverlight iis-6 clientaccesspolicy.xml

我有一个 Silverlight 5 应用程序,它通过 HTTPS 向 IIS 6 托管的单独域(服务器)上的 WCF 数据服务(例如 mydomain.com/service.svc)发出请求。

silverlight 应用程序收到 SecurityException,我认为这与找不到正确的 clientaccesspolicy.xml 文件有关。我在 mydomain.com 的 wwwroot 文件夹中定义了一个 clientaccesspolicy.xml 文件,如下所示

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

奇怪的是,在查看 Fiddler 流量时,从来没有尝试请求 mydomain.com/clientaccesspolicy.xml。

另一件事是 clientaccesspolicy.xml 仅通过 https 提供服务(该服务器上的 IIS 设置仅允许 ssl/tls 连接),所以这可能是问题的一部分吗?

最佳答案

您可以尝试在您的allow-from中显式添加https://:

<allow-from http-request-headers="*">
  <domain uri="http://*"/>
  <domain uri="https://*" />
</allow-from>

我假设当您尝试直接点击该文件时您会看到它(IIS 实际上正在为它提供服务)。

关于Silverlight 5 客户端访问策略.xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13122875/

相关文章:

wpf - 如何将 XAML 转换注入(inject)到我的构建中?

c# - 组合在一起的两个可枚举的数据模板

c# - Silverlight - 验证一个属性

asp.net - 有什么方法可以从 ASP.NET 访问 IIS 内核缓存?

silverlight - Clientaccesspolicy.xml 可在 Tomcat 上的某个端口下找到

wpf - 如何在 DataBound 控件列表中依次启动 Storyboard

asp-classic - 无法将 Crystal Report 导出到 Excel 或 Word

c# - 模拟和委派

silverlight-4.0 - 如何使 HTTP PUT 和 DELETE 在 Silverlight 4 中工作