2011-02-08 82 views

回答

0

如果你想从你的GWT应用程序访问一些其他的服务器(example.com),那么你就必须做一个RPC到您的服务器,在服务器端的代码,你将不得不再拍HTTP调用您正在寻找的example.com页面。

您链接到有关跨站点链接的页面列出了加入<add-linker name="xs"/>到模块文件允许你2个服务器之间分配您的主机:

  • 一个静态文件服务器(所有GWT产生的HTML和JS文件和所有图像)用于动态调用
  • 一台服务器(所有的RPC到这里,和你的index.html主页必须是在这里)
1

史蒂夫的答案是正确的,但是有另外一个选择你可以考虑如果您希望在不使用OAUTH的情况下要求进行服务器交互认证,那么这是最好的方法。主要的一点是,跨站点链接器不会绕过SOP,但允许你主办不同的网站的JS代码中的index.html,这样就可以有一台服务器上的JS代码和servlet并加载它们从另一个。为了解决SOP问题,你可以使用一种名为JSON的方法,使用填充或JSONP。基本上它所做的是使用脚本标记通过在回调中包装请求的数据来向环境中注入外部请求。要做到这一点,您可以使用许多服务器端实现之一,例如Jersey。 GWT 2包含一个JsonpRequestBuilder对象,它可以为您完成所有客户端工作,并且可以以与RequestBuilder相同的方式使用它。有关教程,请参阅this文章。