Перейти к основному содержимому

Создание тестовой конечной точки веб-перехватчика | Документация для разработчиков

Создайте тестовую конечную точку веб-перехватчика

Обновлено: 7 ноября 2025 г
Если вы пока не готовы создать собственную конечную точку веб-перехватчика, вы можете развернуть тестовое приложение веб-перехватчика на Render.com , которое будет принимать запросы веб-перехватчика и выводить их содержимое в консоль Render.
Используйте это приложение только в целях тестирования.

Требования

    Аккаунт Render .Аккаунт на GitHub .

    Шаг 1: Создайте репозиторий GitHub

    Войдите в свою учетную запись GitHub и создайте новый репозиторий (публичный или приватный) с именем на ваш выбор. Внутри репозитория создайте app.js и вставьте в него следующий код:
    //
    Импорт
    Express.jsконстанта
    выражать
    =требовать('выражать');// Создайте приложение Expressконстанта приложение = выражать();// Промежуточное ПО для анализа JSON-тел приложение.использовать(выражать.json());// Установить порт и verify_tokenконстанта порт = процесс.окружающая среда.ПОРТ ||3000;константа verifyToken = процесс.окружающая среда.VERIFY_TOKEN;// Маршрут для GET-запросов приложение.получать('/',(запрос, рез)=>{константа{'hub.mode': режим,'hub.challenge': испытание,'hub.verify_token': токен }= запрос.запрос;если(режим ==='подписаться'&& токен === verifyToken){ консоль.бревно(«ВЕБХУК ПРОВЕРЕН»); рез.статус(200).отправлять(испытание);}еще{ рез.статус(403).конец();}});// Маршрут для POST-запросов приложение.почта('/',(запрос, рез)=>{константа метка времени =новыйДата().toISOString().заменять('Т',' ').ломтик(0,19); консоль.бревно(`\n\nВеб-хук получил ${timestamp}\n`); консоль.бревно(JSON.строковый(запрос.тело,нулевой,2)); рез.статус(200).конец();});// Запуск сервера приложение.слушать(порт,()=>{ консоль.бревно(`\nПрослушивание порта ${port}\n`);});

    Шаг 2: Разверните приложение Node Express в Render

    Следуйте инструкциям Render по развертыванию приложения Node Express но с учетом следующих отличий:
      Пропустите шаг 1Для шага 3 используйте следующие настройки:
        Команда сборки: npm install expressКоманда запуска: node app.jsВ «Переменные среды» добавьте переменную VERIFY_TOKEN и присвойте ей значение по вашему выбору (например, vibecode ).
        Когда закончите, нажмите «Развернуть веб-сервис» . Это переведет вас в журнал приложения, где вы увидите процесс сборки вашего приложения, который может занять несколько минут. Вы поймете, что сборка завершена, когда увидите в журнале сообщение «Ваш сервис запущен».
        Скопируйте URL-адрес вашего развернутого тестового приложения веб-перехватчика, который отображается в верхней части страницы под названием вашего репозитория GitHub. (Если вы попытаетесь просмотреть URL-адрес, вы получите ошибку 403, что вполне ожидаемо).

        Шаг 3: Добавьте URL-адрес вашего тестового приложения веб-перехватчика в ваше приложение Meta

        Откройте новое окно/вкладку и перейдите в раздел «Панель управления (мета) приложения» > WhatsApp > «Веб-хуки» > конфигурации» .
        Вставьте URL-адрес вашего тестового веб-перехватчика в «URL-адрес обратного вызова» , добавьте строку переменной среды VERIFY_TOKEN «Проверить токен» , затем нажмите «Проверить» и сохраните .
        Если проверка прошла успешно, панель управления приложения Meta обновится, и вы увидите список полей веб-перехватчика, на которые можно подписаться.
        Если вы еще этого не сделали, подпишитесь на сообщений
        Кроме того, если в журнале приложения Render вы видите сообщение «WEBHOOK VERIFIED», это означает, что URL-адрес вашего тестового приложения веб-перехватчика успешно проверен.

        Шаг 4: Отправьте тестовое сообщение

        настроек приложения Meta , вернувшись на панель управления, прокрутите вниз до сообщений» , подпишитесь на это поле, если вы еще этого не сделали, а затем нажмите «Тест» .
        Это отправит тестовое сообщение в ваше тестовое приложение веб-перехватчика. Убедитесь, что оно отображается в журнале приложения Render с сообщением «Webhook received», за которым следует тестовая полезная нагрузка в формате JSON:

        Поиск неисправностей

        Если веб-перехватчик тестовых сообщений не отображается в журнале панели управления приложения Render:
          Убедитесь, что вы успешно добавили URL-адрес вашего тестового приложения веб-перехватчика в ваше приложение Meta (Шаг 3).Убедитесь, что ваше приложение подписано на сообщений .Убедитесь, что вы отправляете для сообщений ; некоторые тестовые веб-хуки работают только в рабочем режиме вашего приложения, а другие — только в режиме разработки ( сообщений работают в обоих режимах).