HTTP POST с ярлыка на рабочем столе? - PullRequest
3 голосов
/ 25 марта 2012

У меня есть беспроводной маршрутизатор с кастомной прошивкой Tomato.Есть ряд действий, которые я хотел бы выполнить с помощью простых ярлыков на рабочем столе, таких как отключение беспроводной связи или запуск команды для проверки состояния FTP-сервера на нем.

Я могу сделать это с'системный' инструмент, который позволяет вам выполнять команды оболочки и возвращает вывод.

Я обнаружил из анализа разметки на этой странице, что это делается с помощью простого XMLHttp POST для shell.cgi, параметры action=execute&command=ls и вывод будет STDOUT, который вы получите, если выполните это на локальной оболочке.

Как создать ярлык на рабочем столе для выполнения этих сообщений и каким-то образом повторить ответ?

Я решил, что до сих пор мог создать HTML-файл, который запускает POST с использованием jQuery с использованием некоторой предопределенной функции в зависимости от сегментов URI, которая варьируется для каждого из файлов ярлыков.

ОднакоКто-нибудь знает лучший способ сделать это программно под Windows?

Ответы [ 2 ]

1 голос
/ 25 марта 2012

Используйте wget, который имеет порт Windows.http://gnuwin32.sourceforge.net/packages/wget.htm

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

Команду можно запустить из командного файла на рабочем столе.

0 голосов
/ 10 октября 2018

Это просто хитрость, чтобы сделать то же самое.

  1. Создать файл наподобие executeThisPostRequest.sh
  2. Добавьте следующие строки в этомфайл

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

  3. Перейдите к пути к файлу, где executeThisPostRequest.sh расположен с помощью терминала.

  4. Выполните команду chmod a+x shellscript.execute.sh
  5. Щелкните правой кнопкой мыши файл и выберите команду "Выполнить с помощью терминала".

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

    Запомните настройки, есливы хотите.

Теперь вы можете щелкнуть этот файл, чтобы выполнить запрос на публикацию URL-адреса с указанными вами данными.

...