对您没有代码的外部服务进行 GWT RPC 调用

发布于 2024-08-29 06:19:03 字数 143 浏览 6 评论 0原文

我想制作一个小程序,从支持 GWT 的第 3 方网站抓取信息。是否有可能以某种方式直接调用这个 RPC?我需要进行什么逆向工程才能做到这一点(即希望不是整个低级协议)。

我希望我能以某种方式从我自己的服务器端 GWT 或 Servlet 应用程序中调用它。

I would like to make a small program that scrapes information from a 3rd-party GWT-enabled website. Is it possible to somehow call this RPC directly? What would I need to reverse-engineer to do this (i.e. hopefully not the entire low-level protocol).

I am hoping I could somehow just call this from within my own server-side GWT or Servlet app.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

絕版丫頭 2024-09-05 06:19:03

这是可能的......但您必须仔细阅读他们的代码才能了解序列化/反序列化的工作原理。

感兴趣的类是

  1. RPC.java
  2. ClientSerializationStreamWriter -> ServerSerializationStreamReader 是发出 GWT 请求时涉及的类。
  3. 服务器序列化流写入器 -> ClientSerializationStreamReader 是涉及创建和解释响应的类。

我正在尝试类似的学术项目,如果我能破译这些课程,我将添加更多信息。

It is possible... but you would have to go through their code to understand how the serialization/deserialization works.

Classes of interest are

  1. RPC.java
  2. ClientSerializationStreamWriter -> ServerSerializationStreamReader are the classes involved in making a GWT request.
  3. ServerSerializationStreamWriter -> ClientSerializationStreamReader are the classes involved in creating and interpreting a response.

I am trying out a similar thing as an academic project, and I will add more information if I can decipher these classes.

太傻旳人生 2024-09-05 06:19:03

我很确定,出于安全考虑,GWT 使跨站点请求变得困难。

您提出的任何解决方案都可能很糟糕(并且对未来的变化不灵活),并且由于您可能是在未经相关网站同意的情况下这样做的,因此一开始可能是一个坏主意。

是否有某种原因导致您无法要求网站使用 REST API 发布其数据?

I'm pretty sure GWT makes it difficult to do cross-site requests, for the sake of security.

Any solution you come up with will probably be hacky (and not flexible to future changes), and since you're presumably doing it without the consent of the site in question, probably a bad idea to begin with.

Is there some reason you can't ask the site to publish their data using a REST API?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文