HTTP-запросы: различия между версиями
Материал из Planfix
Seva (обсуждение | вклад) Нет описания правки |
Seva (обсуждение | вклад) Нет описания правки |
||
Строка 38: | Строка 38: | ||
Если нужно, чтобы URL-кодирование не производилось (если в переменной не один параметр, а часть ссылки с уже закодированными значениями), необходимо обернуть ее дополнительно в %%% | Если нужно, чтобы URL-кодирование не производилось (если в переменной не один параметр, а часть ссылки с уже закодированными значениями), необходимо обернуть ее дополнительно в %%% | ||
<div style="display: block; padding: 1em; margin: 0 0 10px; font-size: 13px; line-height: 1.65; color: black; word-wrap: break-word; background-color: #f9f9f9; border: 1px solid #ddd; border-radius: 4px;">'''%%%'''<nowiki>{{Infoblock.RequestURL}}</nowiki>'''%%%''' | <div style="display: block; padding: 1em; margin: 0 0 10px; font-size: 13px; line-height: 1.65; color: black; word-wrap: break-word; background-color: #f9f9f9; border: 1px solid #ddd; border-radius: 4px;">'''%%%'''<nowiki>{{Infoblock.RequestURL}}</nowiki>'''%%%''' | ||
https://my.site.com/'''%%%'''<nowiki>{{Infoblock.Parameters}}</nowiki>'''%%%'''/ | <nowiki>https://</nowiki>my.site.com/'''%%%'''<nowiki>{{Infoblock.Parameters}}</nowiki>'''%%%'''/ | ||
</div> | </div> | ||
Версия от 12:48, 8 июля 2024
ПланФикс работает с HTTP-запросами через автоматические сценарии и вебхуки, используя следующие методы:
- GET
- POST
- PUT
- DELETE
Примеры HTTP-запросов и разбор ответов
- GET-запрос: получение курса валют
- POST-запрос: трекинг посылок
- POST-запрос в ЮКассу: ссылка на оплату
- Приём HTTP-запросов при помощи входящих вебхуков
Важно
- Отправка POST-запросов из аккаунта происходит в один поток, новый POST-запрос не отправляется, пока не получен ответ на предыдущий. В связи с этим, если удаленный сервер отвечает с существенной задержкой, может возникнуть существенная задержка отправки будущих запросов.
- В случае получения от удаленного сервера неудачного ответа (статус ответа не равен 200), ПланФикс пытается повторить запрос несколько раз через некоторые промежутки времени (делается еще 4 попытки повторной отправки: через 15 /+ 30 минут / +1 час / +1 час ) - это делается для предупреждения потери сообщений в случае временной недоступности или неработоспособности удаленного сервера.
- При этом в течение 3-х минут после получения неудачного ответа или отсутствия ответа со стороны сервера никакие другие POST-запросы из аккаунта не отсылаются. Это вынужденная мера, предпринимаемая с целью обеспечения стабильной работы ПланФикса в случаях, когда из аккаунта ПланФикса отправляется большое количество запросов, а сервер куда они отправляются перестает отвечать.
- Случаи неудачной отправки фиксируются в Панели инцидентов
- Вы можете отключить повторную отправку в настройке POST-запроса:
- В HTTP-запросах все переменные при вставке в URL по-умолчанию url-кодируются, для корректоной работы при использовании в качестве параметров ссылки:
https://mysite.com/?param1={{Variable_1}}¶m2={{Variable_2}}
Если нужно, чтобы URL-кодирование не производилось (если в переменной не один параметр, а часть ссылки с уже закодированными значениями), необходимо обернуть ее дополнительно в %%%
%%%{{Infoblock.RequestURL}}%%%
https://my.site.com/%%%{{Infoblock.Parameters}}%%%/
- Отправка и обработка HTTP-запросов логируется в техническом логе задачи:
Дополнительно
- Пост про POST
- Разбор ответов на HTTP-запросы
- Поступающие в ПланФикс данные перед дальнейшим использованием можно дополнительно обработать.