7

GWT RPC 是专有的,但看起来很可靠,由 Google 提供模式支持,并且在我看过的每一本书和教程中都提到过。它真的是 GWT 客户端/服务器通信的选择吗?您是否使用它,如果不使用它,为什么以及您选择了什么?我假设我有可以容纳 RPC、EJB、Web 服务/SOAP、REST 等的通用服务器应用程序代码。

额外问题:我需要注意 GWT RPC 的任何安全问题?

4

2 回答 2

10

我们主要使用三种沟通方式:

  1. GWT-RPC - 这是我们主要和首选的机制,也是我们尽可能使用的机制。这是做事的“GWT方式”,效果很好。
  2. 使用 RequestBuilder 的 XMLHttpRequest - 这通常用于与非 GWT 后端的交互,我们主要使用它来提取我们在运行时需要的静态 Web 内容(类似于服务器端包括的内容)。当我们需要与 CMS 集成时,它尤其有用。我们将 RequestBuilder 代码包装在一个自定义的“Panel”中(它将内容 URI 作为其构造函数参数,并使用 URI 的内容填充自身)。
  3. 使用 FormPanel 提交表单- 这也需要与非 GWT 后端(自定义 servlet)交互,这也是我们目前用来进行跨站点通信的方式。我们本身并没有真正进行“跨站点”通信,但我们有时确实需要在非 SSL 页面上通过 SSL 发送数据,这是迄今为止我们能够做到的唯一方法(有一些 hack )。
于 2009-07-21T00:05:44.460 回答
-1

问题是您使用的是网络浏览器,因此几乎不能保证任何非 http 协议都能正常工作(可能无法通过代理)。

您可以做的是将 GWT-RPC 的东西隔离在一个可替换的类中,并尽快将其剥离。

就我个人而言,我只是依赖于传输一个对象集合,其中包含我需要在集合中编码的信息——这样就很少有 RPC 代码,因为你所有的 RPC 代码都是“Collection commands=getCollection()”,但是有将是一百万种其他可能性。

或者只是按预期使用 GWT-RPC,我认为它不会去任何地方。

于 2009-07-21T00:09:30.320 回答