# Получение веб-хуka

Чтобы получать отправленные данные от вашего сканера, вам необходимо создать конечную точку веб-перехватчика на非常好。

Ваш серверный вебхук должен...

  • Быть доступным для общественности Crawlbase 伺服器
  • Будьте готовы получить POST 200 个月后
  • 200 月 XNUMX 米后,我们将迎来新的一天。 200, 201 or 204 不合时宜

Способ структурирования данных будет зависеть от формата, который вы указали при отправке URL-адреса с параметром формата。 &format=html (что является значением по умолчанию) или &format=json.

Enterprise Crawler Движок отправит данные обратно в конечную точку обратного вызова через POST 方法 gzip сжатия。

注: Убедитесь,что ваш обратный вызов доступен в любое время。 Каждый раз, когда мы доставляем ваш обратный вызов и ваш сервер не может вернуть успешный ответ, мы повторяем попытку сканирования страницы, затем снова пытаемся доставить。 Эти повторные попытки считаются успешными запросами, поэтому они оплачиваются。

注: Если вы используете веб-хуки Zapier, Crawler не отправляет сжатые данные。 Хуки Zapier 是 Gzip 的一部分。

# Запросить примеры

Здесь вы найдете примеры того, что вы можете ожидать получить от The Crawlbase Enterprise Crawler к веб-хуку вашего сервера。

# HTML 图表

Это произойдет, когда вы вызовете API с помощью &format=html.

Headers:
  "Content-Type" => "text/plain"
  "Content-Encoding" => "gzip"
  "Original-Status" => 200
  "PC-Status" => 200
  "rid" => "The RID you received in the push call"
  "url" => "The URL which was crawled"

Body:
  The HTML of the page

# JSON 结构

Это произойдет, когда вы вызовете API с помощью &format=json.

Headers:
  "Content-Type" => "gzip/json"
  "Content-Encoding" => "gzip"

Body:
{
  pc_status: 200,
  original_status: 200,
  rid: "The RID you received in the push call",
  url: "The URL which was crawled",
  body: "The HTML of the page"
}

请注意, pc_status и original_status должны быть проверены。 Вы можете прочитать больше о них 这里 и 这里 分别

# Тестирование интеграции

При создании вебхука может быть полезно увидеть точный ответ для конкретного URL-адреса。

Для облегчения тестирования вы можете настроить Crawlbase Storage в ваших краулерах для целей тестирования。 жете посмотреть здесь (открывается новое окно) (打开新窗口).

# Мониторинговый бот

Crawler будет отслеживать URL вашего веб-перехватчика, чтобы знать его статус, если веб-перехватчик не работает Crawler приостановится и возобновится автоматически, когда ваш веб-хук снова заработает。

Наш бот мониторинга будет продолжать отправлять запросы на вашу конечную точку веб-перехвата。 Обязательно игнорируйте эти запросы с помощью 200 密码。

  • Запросы на мониторинг поступают как POST-запрос с телом json, как и в случае с вызовами без мониторинга。
  • Запросы на мониторинг поставляются с пользовательским агентом Crawlbase Monitoring Bot 1.0 поэтому вы можете легко игнорировать их со статусом 200.

# Защита вашего вебхука

Если вы используете какую-то случайную конечную точку, например yourdomain.com/2340JOiow43djoqe21rjosi Маловероятно, что это будет обнаружено, но в любом случае вы можете защитить конечную точку веб-перехватчика следующими методами (или несколькими из них в сочетании):

  • 发送 индивидуальный заголовок по вашему запросу 我们将在 2020 年 12 月 12 日将其重新命名为“新版本”。
  • 用一些 url 页面 URL 和页面名称: yourdomain.com/2340JOiow43djoqe21rjosi?token=1234
  • 浏览此内容 POST 要求。
  • Проверьте наличие некоторых ожидаемых заголовков (например, Pc-Status, Original-Status, rid等等。)。

Мы не рекомендуем вносить IP-адреса в белый список, поскольку наши сканеры могут отправлять запросы с разных IP-адресов,一个 IP-адреса могут меняться без предварительного уведомления。