【问题标题】:Call GWT servlet with wget使用 wget 调用 GWT servlet
【发布时间】:2013-08-25 05:59:19
【问题描述】:

我们希望通过检查是否可以通过 shell 脚本登录到应用程序来定期监控 GWT Web 应用程序。

有没有办法使用 wget 将带有 JSON 数据的 http post 请求发送到 GWT servlet?

【问题讨论】:

标签: gwt wget


【解决方案1】:

我尝试使用 Apache JMeter 调用 GWT webapp(所以我认为 wget 将能够做同样的事情 EDIT. curl 而不是 wget,感谢@Chris Lercher,请参阅他的评论) .假设您的应用程序使用 GWT-RPC 调用服务器端,您不能使用 JSON。首先,您需要将 JSON 转换为 GWT-RPC proprietary format。最简单的方法是从实际应用程序中捕获必要的请求。您可以使用 Chrome 开发者工具捕获它(打开您的应用程序,打开在开发者工具的网络选项卡上保留日志,然后强制您的应用程序触发请求并分析请求有效负载)。它可能看起来像这样:

7|0|4|http://yourapp/|024F843AF926C69027FD016F55BAC7DF|com.mycompany.RPCProductService|getProducts|1|2|3|4|0|

然后您可以尝试调用您的应用。

在部署新版本的应用程序之后,此请求将失败(即使相应的端点保持不变)。每个请求中都包含某种安全签名,并且会自动更改。

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    使用 curl 的提示和 maksym 描述的方式对我有用:

    curl -i -X POST <REQUEST URL> -H "<ALL HEADERS FROM CATCHED REQUEST>" -d @<FILENAME>

    其中 FILENAME 是包含来自捕获的请求的发布数据的文件的名称

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-23
      • 1970-01-01
      • 2013-04-10
      • 2013-02-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多