Рубрики
Без рубрики

Простое сообщение о том, чтобы на веб-кавках: запугивание останавливается сейчас

Webhook. Похоже, что происходит, когда вы пересекаете паук и пират. В мире Интернета, однако, веб-капли – это нечто совершенно другое. WebHooks помогают подключать услуги вместе. Позволь мне объяснить. Скажем, у нас есть две гипотетические услуги. Один – это услуга, которая генерирует данные, а другой

Автор оригинала: Jared Wolff.

Webhook.

Похоже, что происходит, когда вы пересекаете паук и пират. В мире Интернета, однако, веб-капли – это нечто совершенно другое. WebHooks помогают подключать услуги вместе.

Позволь мне объяснить.

Скажем, у нас есть две гипотетические услуги. Один – это услуга, которая генерирует данные, а другой, которые собирают и организуют эти данные.

Разработчики первой службы мысли, «человек, наша платформа только настолько полезны. Давайте предоставляем пользователям возможность пересылать данные в режиме реального времени в другие услуги ».

Разработчики второй службы мысли. ” Gee Willikers, было бы здорово, если наши пользователи могли бы проще импортировать данные ». Итак, они добавили WebHooks для получения данных в режиме реального времени с обслуживания, как первая услуга.

Сейчас как пользователь, вы используете оба сервиса. Теперь у вас есть сила в руках, чтобы соединить их вместе.

Лучший способ объяснить это с реальным примером.

Реальный мир Пример

На Недавний проект Я подключил сенсор IOT к листу Google Docs. Мне потребовалось всего около 10 минут. Я собираюсь показать вам то же самое прямо сейчас.

Давайте сначала начнем с настройки листа Google.

  • Создать новый лист
  • Как только ты там, перейдите к Инструменты и нажмите Редактор сценария
  • Это должно открыть новое окно, которое выглядит что-то подобное:
  • Скопируйте и вставьте этот код. Я объясню это после того, как мы это сделаем.
//this is a function that fires when the webapp receives a POST requestfunction doPost(e) {    //Return if null  if( e == undefined ) {    console.log("no data");    return HtmlService.createHtmlOutput("need data");   }    //Parse the JSON data  var event = JSON.parse(e.postData.contents);  var data = event.data;
//Get the last row without data  var sheet = SpreadsheetApp.getActiveSheet();  var lastRow = Math.max(sheet.getLastRow(),1);  sheet.insertRowAfter(lastRow);    //Get current timestamp  var timestamp = new Date();    //Insert the data into the sheet  sheet.getRange(lastRow + 1, 1).setValue(event.published_at);  sheet.getRange(lastRow + 1, 2).setValue(data.temperature);  sheet.getRange(lastRow + 1, 3).setValue(data.humidity);  sheet.getRange(lastRow + 1, 4).setValue(data.pm10);  sheet.getRange(lastRow + 1, 5).setValue(data.pm25);  sheet.getRange(lastRow + 1, 6).setValue(data.tvoc);  sheet.getRange(lastRow + 1, 7).setValue(data.c02);    SpreadsheetApp.flush();  return HtmlService.createHtmlOutput("post request received");}

Теперь давайте все понять.

function doPost(e) {

Это функция, которая вызывается на почтовом мероприятии. Рассмотрим этот скрипт в виде веб-сервера. Мы отправляем ИТ-данные по конкретному адресу (что у нас будет в жаркую минуту)

е это объект http call. У него будут данные, которые мы отправляем. Так что это хорошая идея проверить, если это НУЛЕВОЙ. Если это так, то нет необходимости запускать скрипт.

Если у нас есть действительные данные, давайте изменим его из строки на использоваемые JSON. Вы можете использовать любимую функцию каждого Json.parse сделать это.

var event = JSON.parse(e.postData.contents);

Помните, структура данных определит, как вы обрабатываете его! Возможно, вам придется запустить Json.parse Несколько раз в зависимости от того, насколько вложены ваши данные, и в каком формате это в.

После того, как у вас есть данные, пришло время поставить его в нужное место!

//Get the last row without datavar sheet = SpreadsheetApp.getActiveSheet();var lastRow = Math.max(sheet.getLastRow(),1);sheet.insertRowAfter(lastRow);

Эти три вызовы получат вам первую доступную строку, начиная с строки 1 (оставив строку 0 для меток столбца).

Затем, наконец, мы поместим данные в ряд, принадлежат:

sheet.getRange(lastRow + 1, 1).setValue(event.published_at);

Где первый параметр Лист. GTETRANGE это строка, а вторая – это столбец. Вы можете использовать SetValue Функция, чтобы установить то, что вы хотите в этой конкретной ячейке.

Кстати, вдохновение для этого кода пришла из Это пост Отказ

Прохладный. Таким образом, у нас есть скрипт. Как мы это называем?

  • Ударь это Опубликовать кнопка
  • Нажмите Развертывание в качестве веб-приложения
  • Измените настройки, чтобы соответствовать скриншоту ниже. Затем нажмите Развертывать
  • Вы можете получить экран, прося вас обновить ваши разрешения. Нажмите Просмотр разрешений
  • Нажмите на Передовой а затем нажмите Перейти к <ваш файл Н.А. я> внизу левый.
  • Наконец, нажмите Разрешать
  • На последнем экране скопируйте URL-адрес веб -ook!

Попробуй это

Теперь мы можем проверить, если все работает с помощью Postman. Если вы еще не играли с Postman, это отличный графический интерфейс пользователя для Curl Отказ

  • Установите почтальон. Возможно, вам понадобится аккаунт, чтобы пойти дальше.
  • Оказавшись внутри, создайте новый запрос. Назови это Итак, вы знаете, что это принадлежит к этому веб -ookhook Google Docs
  • Нажмите Тело и введите следующий тестовый код:
{    "event": "gdxg",    "data": {        "temperature": 21    },    "coreid": "zczxvz",    "published_at": "zcvzxcvx"}
  • Наконец, нажмите на этот синий Отправить кнопка.
  • Вернитесь на свой лист Excel и посмотрите волшебство!

Теперь мы готовимся с газом!

Заключение

Я надеюсь, что вы получили приведенный выше пример к работе. К счастью, для вас, намного меньше беспокоиться о том, как только вы получите эту роль и бегу!

Чтобы повторить, мы говорили о веб-кавках и почему они используются. Вы должны чувствовать себя уверенно на этом моменте, чтобы пойти и настроить некоторые из себя. Если вы все еще чувствуете себя запуганным, рекомендую использовать такие услуги, как Zapier или IFTTT. (Они блестящие передние концы для API и уже доступны веб-капли.)

Последний, но не менее важный Проверьте полный пост где я интегрирую аппаратное и веб в одном потрясающем проекте.

Счастливое окно!

Оригинал: “https://www.freecodecamp.org/news/a-simple-how-to-on-webhooks-the-intimidation-stops-now-9671e8c94c76/”