ZpServer
static class · пространство имён z3n7 · исходник Server/ZpServer.cs
public static class ZpServer
HTTP-сервер внутри ZennoPoster, который принимает команды от оркестратора напрямую, без базы. Запуск: project.StartZpServer(); остановка: project.StopZpServer(). Эндпойнты: GET /state (задачи и процессы этой машины), POST /command ({ action, task_id, payload }, выполняется сразу), GET/POST /task/xml, GET /task/settings, GET /log (файлы логов ZennoPoster), GET /traffic (трафик в JSONL: tail=N или страницы по смещению в байтах), GET /traffic/har, GET /version (версии z3n7, ZennoPoster и среды выполнения), GET /debug/assemblies. Каждый маршрут требует токен: заголовок Authorization: Bearer {token} или параметр ?token= (для ссылок на скачивание). См. ZpAuth.
Методы
StartZpServer
public static void StartZpServer(this IZennoPosterProjectModel project, int port = 22222, bool log = false, bool openFirewall = false)
Метод расширения для IZennoPosterProjectModel. исходник
Загружает токен доступа, берёт первый свободный порт начиная с port (пробует до 20) и запускает сервер в фоновом потоке. Если сервер уже работает, только снова печатает строку узла. Занятый порт — не ошибка; если нет URL ACL (доступ запрещён), попытка останавливается с предупреждением, в котором указана команда netsh http add urlacl.
| Параметр | Описание |
|---|---|
port |
Первый порт, который пробуется. |
log |
Напечатать в лог строку регистрации узла (и подсказки к ней). |
openFirewall |
Создать входящее правило брандмауэра для порта, если его нет (нужны права администратора). |
StopZpServer
public static void StopZpServer(this IZennoPosterProjectModel project, bool log = false)
Метод расширения для IZennoPosterProjectModel. исходник
Останавливает сервер.
| Параметр | Описание |
|---|---|
log |
Написать строку в лог. |