0

解释有点棘手的问题,但这里有......

1) domain1 上的 swf 文件,读取 domain1 上的 xml 文件以显示数据 2) 还包含打开另一个同样托管在 domain1 上的 html 文件的 ShadowBox 弹出窗口的链接 3) 此 swf 文件也嵌入在 domain2 上的 iFrame 中 4) domain2 有ShadowBox 也安装在 HTML 中

问题基本上归结为跨站点脚本:

domain2 上嵌入的 swf 会触发 domain2 ShadowBox 以打开此弹出窗口,但 Flash 中的 javascript 调用来自 domain1,这会导致跨域权限问题。

谁能想到解决这个问题的方法?JSONP 似乎是一种选择,但我对使用它并不完全满意。JQuery 有什么方法可以解决这个问题吗?到现在什么都找不到...

4

1 回答 1

1

我正在尝试理解您的问题,所以我会在我看到的情况下进行解释 - 如果我错了,请告诉我。在 domain1 上,您有一个 swf,它在 javascript 中调用外部接口调用,这会导致在 domain2 上的 iframe 中加载的脚本上发生动作?

如果是这种情况,您可以通过从 swf 进行调用并从等式中删除 externalInterface 来解决相同的来源策略问题。如果目标域(在本例中为 domain2)上的 crossdomain.xml 文件允许,Flash 将允许您对另一个域进行 HTTP 调用(请参阅此线程:有人可以发布格式良好的 crossdomain.xml 示例吗?

如果我离基地很远,请告诉我。

于 2011-03-04T16:45:28.330 回答