【问题标题】:WebRequest SecurityExceptionWebRequest 安全异常
【发布时间】:2012-04-23 18:39:14
【问题描述】:

我正在尝试发布跨域 HTTP 请求,但不断收到 SecurityException 而不是响应。

我已经添加了一个clientaccesspolicy.xml

<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>

还有一个crossdomain.xml

<!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
  <allow-http-request-headers-from domain="*" headers="*"/>
</cross-domain-policy>

到 silverlight 应用程序并将两者都设置为 内容 + 始终复制

我做错了什么?

【问题讨论】:

    标签: silverlight cross-domain-policy


    【解决方案1】:

    xml 文件是否存在于站点的 root 上?也许您可以在尝试访问服务时让 Fiddler 或任何其他网络监视器运行,这样您就可以看到 xml 文件的 404 并查看哪里出错了。

    编辑:另外,如果您使用 Silverlight,您只需要一个 clientaccesspolicy.xml。 crossdomain.xml 是一个基于 Flash 的域策略文件,Silverlight 也可以理解。

    【讨论】:

    • 我在本地 atm 工作。这些文件是否需要存在于目标上?
    • 是的,他们应该这样做。见:msdn.microsoft.com/en-us/library/cc645032(v=vs.95).aspx
    • 所以当我使用silverlight 时,不能访问位于其他域上的任何资源,然后是我自己的?如前所述,xml文件存在。
    • 正确,只需要求 web 服务所有者在其服务的根目录中放置一个文件。
    • 如果您可以通过浏览器(get methode)访问服务(例如http webservice),您还可以使用代理访问没有策略文件的服务。
    猜你喜欢
    • 2016-06-16
    • 1970-01-01
    • 1970-01-01
    • 2016-01-16
    • 2011-01-21
    • 2010-12-02
    • 2016-11-20
    • 2015-09-13
    • 2014-09-28
    相关资源
    最近更新 更多