HTTP-запросы: различия между версиями
Материал из Planfix
Artem (обсуждение | вклад) Нет описания правки |
Artem (обсуждение | вклад) |
||
| (не показано 20 промежуточных версий 2 участников) | |||
| Строка 2: | Строка 2: | ||
|title=HTTP-запросы в ПланФиксе | |title=HTTP-запросы в ПланФиксе | ||
|titlemode=append | |titlemode=append | ||
|keywords=планфикс, post-запросы, сценарии, входящие вебхуки, HTTP-запросы, http, запросы, POST, GET, PUT, DELETE | |keywords=планфикс, post-запросы, POST-запросы, сценарии, входящие вебхуки, HTTP-запросы, http, запросы, POST, GET, PUT, DELETE, Отправка POST-запросов при помощи автоматических сценариев | ||
|description=HTTP-запросы в ПланФиксе | |description=HTTP-запросы в ПланФиксе | ||
}} | }} | ||
| Строка 14: | Строка 14: | ||
==Примеры HTTP-запросов и разбор ответов == | ==Примеры HTTP-запросов и разбор ответов == | ||
*[[ | *[[POST-запрос: трекинг посылок]] | ||
*[[Входящие вебхуки |Приём HTTP-запросов при помощи входящих вебхуков]] | *[[Входящие вебхуки |Приём HTTP-запросов при помощи входящих вебхуков]] | ||
<geoip eq="RU,BY">*[[GET-запрос: получение курса валют]] | |||
*[[POST-запрос в ЮКассу: ссылка на оплату]]</geoip> | |||
== Важно == | == Важно == | ||
*Отправка POST-запросов из аккаунта происходит в один поток, новый POST-запрос не отправляется, пока не получен ответ на предыдущий. В связи с этим, если удаленный сервер отвечает с существенной задержкой, может возникнуть существенная задержка отправки будущих запросов. | *Отправка POST-запросов из аккаунта происходит в один поток, новый POST-запрос не отправляется, пока не получен ответ на предыдущий. В связи с этим, если удаленный сервер отвечает с существенной задержкой, может возникнуть существенная задержка отправки будущих запросов. | ||
*В случае получения от удаленного сервера неудачного ответа (статус ответа не равен 200), ПланФикс пытается повторить запрос несколько раз через некоторые промежутки времени (делается еще | *В случае получения от удаленного сервера неудачного ответа (статус ответа не равен 200), ПланФикс пытается повторить запрос несколько раз через некоторые промежутки времени (делается еще 4 попытки повторной отправки: через 15 /+ 30 минут / +1 час / +1 час ) - это делается для предупреждения потери сообщений в случае временной недоступности или неработоспособности удаленного сервера. | ||
*При этом в течение 3-х минут после получения неудачного ответа или отсутствия ответа со стороны сервера никакие другие POST-запросы из аккаунта не отсылаются. Это вынужденная мера, предпринимаемая с целью обеспечения стабильной работы ПланФикса в случаях, когда из аккаунта ПланФикса отправляется большое количество запросов, а сервер куда они отправляются перестает отвечать. | *При этом в течение 3-х минут после получения неудачного ответа или отсутствия ответа со стороны сервера никакие другие POST-запросы из аккаунта не отсылаются. Это вынужденная мера, предпринимаемая с целью обеспечения стабильной работы ПланФикса в случаях, когда из аккаунта ПланФикса отправляется большое количество запросов, а сервер куда они отправляются перестает отвечать. | ||
| Строка 30: | Строка 30: | ||
*Вы можете отключить повторную отправку в настройке POST-запроса: | *Вы можете отключить повторную отправку в настройке POST-запроса: | ||
https://p.pfx.so/pf/yc/tICMJf.png | :https://p.pfx.so/pf/yc/tICMJf.png | ||
*Отправка и обработка HTTP-запросов логируется в техническом логе задачи: | |||
https://p.pfx.so/pf/RD/3SkuVH.png | |||
== Использование переменных == | |||
В HTTP-запросах все переменные при вставке в 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>https://</nowiki>mysite.com/?param1='''<nowiki>{{Variable_1}}</nowiki>'''¶m2='''<nowiki>{{Variable_2}}</nowiki>'''</div> | ||
Для того, чтобы 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>'''%%%''' | |||
<nowiki>https://</nowiki>my.site.com/'''%%%'''<nowiki>{{Infoblock.Parameters}}</nowiki>'''%%%''' | |||
</div> | |||
== Дополнительно == | |||
<geoip eq="RU,BY">*[https://planfix.com/ru/blog/post/ Пост про POST] | |||
*[https://planfix.com/ru/blog/razbor-otvetov-na-http-zaprosy/ Разбор ответов на HTTP-запросы]</geoip> | |||
*Поступающие в ПланФикс данные перед дальнейшим использованием можно дополнительно [[Вычислить инфоблок |обработать]]. | |||
== Перейти == | == Перейти == | ||
Текущая версия от 08:24, 8 ноября 2025
ПланФикс работает с HTTP-запросами через автоматические сценарии и вебхуки, используя следующие методы:
- GET
- POST
- PUT
- DELETE
Примеры HTTP-запросов и разбор ответов
Важно
- Отправка POST-запросов из аккаунта происходит в один поток, новый POST-запрос не отправляется, пока не получен ответ на предыдущий. В связи с этим, если удаленный сервер отвечает с существенной задержкой, может возникнуть существенная задержка отправки будущих запросов.
- В случае получения от удаленного сервера неудачного ответа (статус ответа не равен 200), ПланФикс пытается повторить запрос несколько раз через некоторые промежутки времени (делается еще 4 попытки повторной отправки: через 15 /+ 30 минут / +1 час / +1 час ) - это делается для предупреждения потери сообщений в случае временной недоступности или неработоспособности удаленного сервера.
- При этом в течение 3-х минут после получения неудачного ответа или отсутствия ответа со стороны сервера никакие другие POST-запросы из аккаунта не отсылаются. Это вынужденная мера, предпринимаемая с целью обеспечения стабильной работы ПланФикса в случаях, когда из аккаунта ПланФикса отправляется большое количество запросов, а сервер куда они отправляются перестает отвечать.
- Случаи неудачной отправки фиксируются в Панели инцидентов
- Вы можете отключить повторную отправку в настройке POST-запроса:
- Отправка и обработка HTTP-запросов логируется в техническом логе задачи:
Использование переменных
В HTTP-запросах все переменные при вставке в URL по умолчанию URL-кодируются (для корректной работы при использовании в качестве параметров ссылки):
https://mysite.com/?param1={{Variable_1}}¶m2={{Variable_2}}
Для того, чтобы URL-кодирование не производилось (если в переменной не один параметр, а часть ссылки с уже закодированными значениями), необходимо обернуть ее дополнительно в %%%:
%%%{{Infoblock.RequestURL}}%%%
https://my.site.com/%%%{{Infoblock.Parameters}}%%%
Дополнительно
- Поступающие в ПланФикс данные перед дальнейшим использованием можно дополнительно обработать.
