0

每天,我必须通过一个基于 Web 的身份验证系统(防火墙),它的工作原理如下:一旦我连接到网络并输入任何网址,例如www.google.com,我会看到一个基于 Web 的登录表单(输入任何地址都会带来使用相同的表单)并在提交后从路由器获得一个经过身份验证的响应页面,地址为: 192.168.2.254:1000/keepalive?somejibberjabbernumberwhichchangeseverytime

该页面必须在 200 秒后刷新,否则您将被注销。这是自动完成的,但有时会失败。

之后,启用互联网并且可以浏览。我想制作一个简单的应用程序(java)来为我完成这项无聊的任务。它会将我的凭据发送到服务器。登录我。说 30 秒后自动发送刷新命令。

关于如何做到这一点有什么建议吗?我需要创建一个独立的桌面应用程序而不是服务器端应用程序。

谢谢

4

1 回答 1

1

所以基本上,你想用你的应用程序“玩浏览器”吗?像httpunit这样的Web 测试库非常适合此类任务。基本上,这就是你要做的:

  • 查询某个页面(GetMethodWebRequest),期望被重定向
  • 检查您是否被重定向
  • 提取表单(response.getFormWithID),填写您的凭据,提交
  • 最有可能是棘手的部分:获取弹出窗口 URL。
  • 定期轮询提取的 URL

看看 httpunit 的食谱和教程,我猜你会在那里找到解决问题所需的所有信息。

于 2012-08-03T08:40:16.597 回答