哪个网站导致我的跨源浏览错误?

时间:2014-08-21 01:47:43

标签: cors crm iis-8 dynamics-crm-2013

我安装了CRM 2013,并且正在使用网络资源重定向到其他网页。

当我从其中一个页面导航回CRM中的某个页面(如“联系人”)时,它会显示一个仅包含顶部导航栏的空白页面。如果我刷新或使用导航栏,它加载正常。导航更多后会出现错误:

Uncaught SecurityError: Blocked a frame with origin "https://crm.site.com:1234" from accessing a cross-origin frame.

https://crm.site.com:1234是CRM。

https://other.site.com:4321是网络资源重定向到的地方。

错误来自于没有正确设置https://other.site.com:4321来处理CORS吗?我在Web.config中有以下内容:

<httpProtocol>
  <customHeaders>
    <add name="Access-Control-Allow-Origin" value="https://crm.site.com:1234"/>
    <add name="Access-Control-Allow-Headers" value="*"/>
    <add name="Access-Control-Allow-Methods" value="POST,GET,OPTIONS"/>
    <add name="Access-Control-Allow-Credentials" value="true"/>
  </customHeaders>
</httpProtocol>

或者我是否需要在CRM 2013中修改某些内容以允许此操作?

1 个答案:

答案 0 :(得分:0)

找到解决方案。发布以防其他人有同样的问题。

如果您重定向Web资源,它似乎会导致错误。这样做的方法是在Web资源中添加IFrame。这是我的网络资源最终看起来像:

<html>
   <body>
       <iframe src="https://other.site.com:4321"></iframe>
   </body>
</html>