4

我有一个带有 Tomato 自定义固件的无线路由器。我想通过简单的桌面快捷方式执行许多操作,例如关闭无线或运行命令以检查其上 FTP 服务器的状态。

我可以通过“系统”工具执行这些操作,该工具可让您执行 shell 命令并返回输出。

我通过分析此页面上的标记发现,这是通过简单的 XMLHttp POST toshell.cgi参数完成的,action=execute&command=ls如果您在本地 shell 上执行此操作,输出是您将获得的 STDOUT。

如何创建桌面快捷方式来执行这些帖子并以某种方式回应响应?

到目前为止,我认为我可以做的是制作一个 HTML 文件,该文件使用 jQuery 使用一些预定义的函数来启动 POST,具体取决于 URI 段,我会对每个快捷方式文件有所不同。

但是,有人知道在 Windows 下以编程方式执行此操作的更好方法吗?

4

2 回答 2

1

使用 wget,它有一个 windows 端口。http://gnuwin32.sourceforge.net/packages/wget.htm

wget --post-data 'action=execute&command=ls' http://router/shell.cgi

您可以从桌面上的批处理文件运行命令。

于 2012-03-24T20:57:20.830 回答
0

这只是一个技巧。

  1. 创建一个像executeThisPostRequest.sh
  2. 在该文件中添加以下行

    curl --data "userName=Dileep&MyPassword=SameAsYours" http://10.0.1.1/login?
    exit

  3. executeThisPostRequest.sh使用终端导航到文件路径。

  4. 执行 chmoda+x shellscript.execute.sh
  5. 右键单击该文件并选择使用终端执行。

    Open with >> Other >> all Application >> Utilities >> Terminal

    如果需要,请记住设置。

现在您可以单击该文件以使用您指定的数据执行对 URL 的发布请求。

于 2018-10-10T20:28:33.517 回答