Информация
Услуги
  • Внедрение
  • Настройка
  • Поддержка
  • Ремонт
Контакты
Новинка
Распродажа
Новости
Доставка
Оплата
Загрузки
  • Прошивки
    • WinBox
    • RouterOS
    • Мобильные приложения MikroTik
    • Архив
  • RouterOS
  • Мобильные приложения MikroTik
  • Архив
Форум
Настройка
    info@mikrotik.moscow
    +7 495 320-55-52
    Заказать звонок
    Mikrotik.moscow
    Каталог
    • Акции
      Акции
    • Маршрутизаторы
      Маршрутизаторы
    • Коммутаторы
      Коммутаторы
    • Радиомосты и уличные точки доступа
      Радиомосты и уличные точки доступа
    • Wi-Fi для дома и офиса
      Wi-Fi для дома и офиса
    • LTE/5G
      LTE/5G
    • Powerline адаптеры
      Powerline адаптеры
    • IoT устройства
      IoT устройства
    • Оборудование 60 ГГц
      Оборудование 60 ГГц
    • Материнские платы RouterBOARD
      Материнские платы RouterBOARD
    • Корпуса
      Корпуса
    • Интерфейсы
      Интерфейсы
    • SFP/QSFP трансиверы
      SFP/QSFP трансиверы
    • Аксессуары
      Аксессуары
    • Антенны
      Антенны
    • Архив
      Архив
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Скачать WinBox Скачать Прошивки Форум > RouterOS Форум > SwOS Форум > Железо
    Mikrotik.moscow
    Каталог
    Войти
    0 Сравнение
    0 Избранное
    0 Корзина
    Mikrotik.moscow
    Телефоны
    +7 495 320-55-52
    Заказать звонок
    0
    0
    0
    Mikrotik.moscow
    • +7 495 320-55-52
      • Назад
      • Телефоны
      • +7 495 320-55-52
      • Заказать звонок
    • info@mikrotik.moscow
    • г. Москва, ул. Бакунинская, 84
    • Пн-Пт: 09-00 до 18-00
      Сб-Вс: выходной


    • Кабинет
    • 0 Сравнение
    • 0 Избранное
    • 0 Корзина
    Главная
    Форум
    Форум
    RouterOS
    Почему команда "fetch" не ждёт вывода?

    Почему команда "fetch" не ждёт вывода?

    Форумы: RouterOS, Аппаратное обеспечение, SwOS, Обратная связь, Объявления, Сторонние инструменты
    Поиск  Пользователи  Правила  Войти
    Страницы: 1
    RSS
    Почему команда "fetch" не ждёт вывода?, RouterOS
     
    rssreader
    Guest
    #1
    0
    15.04.2020 08:54:00
    Я использую команду «fetch» для запуска PHP-скриптов на моём веб-сервере через вызов по URL. PHP-скрипт генерирует большой объём данных (XML) — это занимает много времени. В конце он выводит только «OK». Однако команда fetch не ждёт появления «OK». Можно ли как-то установить таймаут для получения вывода или как это вообще решить? Мне нужно убедиться, что «OK» действительно вернулось.
     
     
     
    infabo
    Guest
    #2
    0
    29.12.2021 11:25:00
    @rssreader, ты уже нашёл решение? У меня та же проблема: в скрипте после tool/fetch ничего не выполняется.
     
     
     
    byosni
    Guest
    #3
    0
    27.01.2022 20:08:00
    У меня тоже такая же проблема, @mikrotik, добавьте, пожалуйста, "limit timeout" в инструмент fetch.
     
     
     
    elico
    Guest
    #4
    0
    23.03.2021 20:38:00
    Попробуй проверить, нет ли какой-то ошибки, используя do и on-error, например:  
    :local cronUrl "https://xxxxxxxxxxxxx.php";  
    /log info "start";  
    :do {  
    /tool fetch url=$cronUrl;  
    } on-error={  
    /log info "finished with error";  
    }  
    /log info "finished";  
    В скриптах команды log и fetch должны начинаться с “/”.
     
     
     
    Jotne
    Guest
    #5
    0
    24.03.2021 06:23:00
    Тебе не нужно ставить ; после каждой строки. Он нужен только если в одной строке несколько команд.
     
     
     
    rssreader
    Guest
    #6
    0
    01.07.2020 05:32:00
    Вот так?:  
    :local cronFile "result.log";  
    :local cronUrl "https://www.xxxxxxx.xx/xxxxxxxxxxxxx.php";  
    :delay 5s;  
    :tool fetch url=$cronUrl dst-path=$cronFile;  
    :delay 10s;  
    :local cronResult [/file get $cronFile contents];
    :if ($cronResult != "OK") do={ /tool e-mail send to="email@email.xx" subject="cron incomplete" body=$cronResult file=$cronFile }  
    Результат тот же — ничего. В команде fetch отсутствует опция «timeout».
     
     
     
    sutrus
    Guest
    #7
    0
    01.07.2020 17:26:00
    Возврат значения в переменную:  
    :local cronUrl "https://www.xxxxxxx.xx/xxxxxxxxxxxxx.php";  
    :local result [/tool fetch url=$cronUrl as-value output=user];
    :if ($result->"status" = "finished") do={  
       :if ($result->"data" != "OK") do={  
           /tool e-mail send to="email@email.xx" subject="cron incomplete" body=$cronResult file=$cronFile  
       }  
    }
     
     
     
    rssreader
    Guest
    #8
    0
    07.03.2021 13:56:00
    Также ничего не работает, в логе появляется только «start»:

    :local cronUrl "https://xxxxxxxxxxxxx.php";  
    :log info "start";  
    :local result [ :tool fetch url=$cronUrl as-value output=user ];
    :log info "finish";
     
     
     
    Chupakabra303
    Guest
    #9
    0
    21.12.2021 14:32:00
    Команда Mikrotik, пожалуйста, добавьте в инструмент Fetch опцию таймаута! Таймаут по умолчанию — 10 секунд — слишком мал для некоторых задач. Ошибка: истекло время ожидания подключения.
     
     
     
    Страницы: 1
    Читают тему
    +7 495 320-55-52
    info@mikrotik.moscow
    Электрозаводская, Бауманская
    Москва, ул. Бакунинская, 84с21
    Конфиденциальность Оферта
    © 2026 «Mikrotik.Moscow»
    Главная Каталог 0 Корзина 0 Избранные Кабинет 0 Сравнение Акции Контакты Услуги Бренды Отзывы Компания Лицензии Документы Реквизиты Поиск Блог Обзоры