0

我是新手,我正在开发一个使用分布式资源的应用程序。

我有一台称为“演示服务器”的服务器,它提供与模板和 ajax 应用程序相关的所有内容(css、图像、js ......)

第二台服务器仅用于提供原始数据(比如说,当您发送“GET /resources/a-resource”时,它返回“text/plain, 'abc'”),实际上我正在设备上开发嵌入式 RESTful 接口.

我有一个连接到第一台服务器的客户端,下载模板。然后,ajax 代码从第二个服务器检索原始数据并使用模板呈现给用户。

我知道这里有一个 ajax 的跨域问题。我也知道一些当前的解决方案,例如 jquery 或 script 标签。

我真正关心的是 HTML5 的跨文档消息传递功能。但我发现只是,他们打开两个窗口(一个窗口+一个Iframe或一个窗口+一个窗口)并在彼此之间传递消息。

它不像 XMLHttpRequest 那样向其他人发送“GET”并处理返回的数据。

请告诉我 HTML5 中的跨文档消息传递如何真正解决我的问题。

** 简而言之,我的痛苦是 XMLHttpRequest 确实确实将 GET 发送到其他来源,但跨文档消息传递没有(据我所知),如果带有跨文档消息传递的 HTML5 能够像 XMLHttpRequest 那样做,我会徘徊是否向其他域发送 GET

我真的很感谢你。

4

1 回答 1

0

但我发现只是,它们打开两个窗口(一个窗口+一个 Iframe 或一个窗口+一个窗口)并在彼此之间传递消息。

这不是真的。您可以在一个文档中有多个 iframe,每个 iframe 来自不同的域,并且它们都可以相互发布和接收消息。因此,您不需要将页面放在完全独立的窗口中。

此外,由于您同时控制演示文稿和 API 服务器,您只需将Access-Control-Allow-OriginAPI 服务器上的标头设置为仅接受来自演示服务器的客户端。这将允许您像往常一样使用 AJAX。

于 2011-06-24T04:38:56.143 回答