«GET» запросы в 1С

0
1283
19.03.2021 Айдар Фархутдинов

Содержание:

1.      Использование «GET» запросов HTTP

2.      Отработка перенаправления http запроса


Для платформы 1С 8.3 осуществлена достижимость работы HTTP запросов, конкретнее GET и POST запросов. Это весьма удобный аппарат для совершения обмена данными со всевозможными веб-ресурсами, настройки взаимосвязи с ними, а также другими службами и системами.  


1.    Использование «GET» запросов HTTP


Метод «GET» является наиболее популярным HTTP запросом. Чаще всего, указанный запрос GET HTTP используют для получения какого-то ресурса или его содержимого. В пример можно привести файл.


Принцип работы «GET» запроса является довольно простым. После соединения с сервером случается отправление заголовка запроса, и, если запрос одобрен, то отправителю вернётся в ответ «тело» с предметом запрашиваемого ресурса.

 

Для того работы с запросом GET в 1С имеется три основных объекта: HTTPСоединение, HTTPЗапрос и HTTPОтвет. Помимо этого, для формирования HTTPS-соединения применяется объект ЗащищенноеСоединениеOpenSSL, а для связи через прокси-сервер – объект ИнтернетПрокси.


Рассмотрим каждый из объектов для более глубокого понимания сути запросов GET HTTP:


1. HTTPСоединение – ответственен за связь с сервером. В свойствах объекта, кроме обязательного адреса, есть возможность указать порт, прокси, логин, пароль, защищенное соединение и так далее.


2. HTTPЗапрос – даёт возможность сделать описание того, что конкретно мы хотим получить от сервера. В самих свойствах потребуется отметить адрес ресурса, к которому мы обращаемся.


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


4. ИнтернетПрокси – предоставляет предписать настройки для прокси-сервера. При помощи метода установить () получаем возможность указания параметров для подключения к прокси-серверу.


5. ЗащищенноеСоединениеOpenSSL – даёт возможность сделать соединение защищённым (OpenSSL). Можно указать сертификат клиента и/или сертификат главного центра.


Метод запроса «GET» используется для запроса составляющего указанного ресурса. При помощи него имеется возможность также запускать различные процессы. В таком случае в «тело» обратного ответного сообщения необходимо добавить информацию о ходе исполнения действия.


Клиент сможет отображать и передавать параметры исполнения запроса в URI целевого ресурса после символа «?»:


GET /path/resource?param1=value1&param2=value2 HTTP/1.1


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


Помимо обычного метода запроса «GET», различают ещё два подтипа:

· Условный «GET» – содержит заголовки вида If-Modified-Since, If-Match, If-Range и подобные им;

· Частичный «GET» – содержит в запросе Range.


Порядок исполнения запросов, указанных выше, определён отдельно, по стандартам HTTP.


Отличительная особенность запросов GET HTTP – это то, что у него нет «тела» сообщения, то бишь имеются только заголовки. Но данная особенность не значит, что посредствам данного метода не представляется возможным передать серверу определенную информацию. Передача информации осуществляется с помощью специальных «GET» параметров.


Для того чтобы добавить запрос «GET» с параметрами, потребуется в конце URL-адреса напечатать знак «?» и, только после него, начинать задавать их по нижеуказанному закону:

имя_параметра1=значение_параметра1& имя_параметра2=значение_параметра2&…


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

http://site.ru/page.php?name=dima&age=27


Как только запрос будет выполнен, все данные попадают в так называемую переменную окружения QUERY_STRING, и если понадобилось их получить, то это делается с помощью серверного языка веб-программирования.


Конструкция вида $_GET ["имя параметра"] дозволяет выводить значение данного параметра.


Как результат, при завершении этого кода, в браузере выведется:

Ваше имя: dima

Ваш возраст: 27


Для справки, при переходе по любой ссылке, которая выглядит в HTML в подобном виде:

<a href="link.php?name=dima">Ссылка</a>


…также выполняется запрос к серверу методом запроса «GET».


Пример запроса «GET»

Пример запроса «GET»


На рисунке выше видим, как можно выполнит «GET» запрос: в строку «Сервер запроса» вводим адрес сервера, из которого будем загружать файл, а в строку «Текст запроса» необходимо скопировать часть ссылки, которая идёт после имени сервера. Пример «GET» запроса:


Если ссылка: www.site.ru/something/file.jpg; то адресом сервера будет www.site.ru, а остальная часть ссылки пойдет в текст запроса /something/file.jpg.

 

На скриншоте выше в полях находится адрес сервера и ссылка для скачивания картинки в формате PNG. Чтобы выполнить это, необходимо скачать первичную конфигурацию и выполнить «GET» запрос, кликнув по кнопке «Выполнить запрос» на форме.


В первую очередь создаем объект соединения с HTTP ресурсом. У объекта HTTP могут быть такие свойства, как:


  • Сервер — это строка подключения, в которой написан адрес сервера;
  • Порт – некое число, которое определяет порт сервера, по первичным настройкам, в зависимости от типа подключения, можно написать 80 для незащищенных соединений и 443 для защищенных (SSL);
  • Имя пользователя – обязательно только в случае, когда нужна авторизация на сервере;
  • Пароль – это пароль пользователя на ресурсе;
  • Прокси – необходим, только когда для связи с сервером применяется прокси;
  • ЗащищенноеСоединение – по внутренним настройкам имеет значение «ЛОЖЬ», переключение в «ИСТИНА» показывает, что был использован HTTPS протокол.

Помимо того, у объекта HTTPСоединение присутствуют свои методы, обращение к которым позволяет наиболее полным образом описать последовательность выполнения обработчика:


  • ВызватьHTTPметод – хранит два обязательных параметра HTTPметод и HTTPзапрос, поддерживает возможность записи «тела» ответа в файл;
  • Записать – с помощью PUT запроса отправляет данные на сервер;
  • Изменить – изменяет объект, обрабатывая PATCH запросы;
  • ОтправитьДляОбработки – метод указывающий на использование POST запроса;
  • ПолучитьЗаголовки – очередной метод;
  • Удалить – по факту, это запрос «Delete», удаляет переданный в запросе ресурс с сервера.

Во второй строке запроса «GET» создаётся запрос к избранному сайту, текст обращения включает один «слеш», то есть осуществляет переход на главную страницу. В случае, когда после слеша следует другое выражение, осуществился бы переход на другую страницу.


Задача третьей строки запроса «GET» – выполнить запрос к серверу, а четвёртая выводит результат.  


2.    Отработка перенаправления http запроса


При перенаправлении HTTP необходимо в самой программе получить результат поиска через любую поисковую систему по ключу «Запросы в 1С». Часть кода, которае обеспечивает обращение к GOOGLE представлен ниже.


Код, который обеспечивает обращение к GOOGLE при перенаправлении HTTP

Код, который обеспечивает обращение к GOOGLE при перенаправлении HTTP

Кроме раннее упомянутых конструкций, присутствуют Заголовки и КодСостояния.


КодСостояния – постоянная величина, оговоренная в «Request for Comments». Она имеет такие значения:

1.     Когда всё идёт по плану, то значение находится в диапазоне от 100 до 299;

2.     При варианте перенаправления вернется код в диапазоне от 300 до 399;

3.     Если имеются ошибки, то параметр примет значение от 400 до 499;

4.  Показатель с величиной в области 500-599 подсказывает, что существуют проблемы с сервером.


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


Параметры текста заголовка при перенаправлении HTTP

Параметры текста заголовка при перенаправлении HTTP

1.     Схему подключения (то, что идёт до двух слешей «//»);

2.     Адресную строку соединения;

3.     Имя пользователя и пароль;

4.     Порт и хост для подключения.


Таким образом, получая новый адрес, пользователь получает также возможность сохранить страницу на компьютере и открыть её в браузере (процедура ПолучитьСтраницу).


Смысл процедуры «Получить Страницу» представлено на рисунке ниже.


Процедура Получить страницу при перенаправлении HTTP

Процедура Получить страницу при перенаправлении HTTP


По факту, здесь создаётся текстовый документ из тела сайта, запускающий страницу в браузере, который стоит по умолчанию.

Далее файл помещается в корень диска D и называется «test».


Специалист компании «Кодерлайн»

Айдар Фархутдинов

Задать вопрос автору статьи
Тема вопроса*
Ваше имя*
E-mail или телефон*
Ваш вопрос*
 

Добавить комментарий
Текст сообщения*
Защита от автоматических сообщений
 
Теги
#1С: CRM #1С: ERP #1С: ERP Управление строительной организацией #1С: ERP. Управление буровой компанией #1С: WMS Управление складом #1С: Аренда и управление недвижимостью #1С: БУХ #1С: Договорчики #1С: Документооборот #1С: ЗУП #1С: Интеграция #1С: КА #1С: Колледж #1С: Конвертация данных #1С: Модули #1С: Платформа #1С: Розница #1С: Сценарное тестирование #1С: ТОИР #1С: УАТ #1С: УКФ #1С: Университет #1С: УНФ #1С: УПП #1С: Управление строительной организацией #1С: УТ #1С: УХ #1С:ERP #1С:БГУ #1С:БП #1С.6-НДФЛ #ADO #APACHE #API #canonical #com-объекты #Excel #Excel в 1С #GoogleDrive #HTTP #ITIL #Koderline: Управление медиа-холдингом #Koderline: Управление проектами строительства скважин #LINUX #MS SQL Server #WEB #WEB-сервисы 1С #Word #XML #Администрирование 1С #акты в 1С #Безопасность сервера #Бесшовная интеграция #БИТ.Финанc #Битрикс24 #Блокировки в 1С #БСП #БУ #Бурение скважин #Бюджетирование #Внедрение #Внедрение ERP #Закрытие месяца #Запросы 1С #Интеграция 1С #КАК ОТРАЖАЮТСЯ ТОВАРЫ В ПУТИ 1С #Как сделать в 1С #Конвертация данных #Корпоративное сопровождение #Лизинг #Лицензии 1С #Механизм Анализа Данных в 1С #Моделирование #Модуль Диадок #МСФО #Налоги #Обмен между базами #Обновления #Оптимизация #Отпуск #Отчетность #Отчеты в 1С #Оценка задач #Перенос данных #Планирование #Полезные обработки #Правила обмена #предопределенные элементы справочников #Проводки 1С #Программирование в 1С #Программные права #Продажи #Производство #Работа с объектами в 1С #Расширение конфигурации #РСБУ #С # #СКД #Соединение COM в 1С платформе #Сравнение конфигураций #Тестирование 1С #Техническое задание #Торговое оборудование #Транспортная логистика #Управление проектами #Финансовый учет #Хранилище настроек #Ценообразование #Экзамен 1С #Яндекс.Касса Email или телефон Работа с объектами в 1С Функциональные опции в 1С
Услуги программиста 1С
Получите специалиста  
для решения всех задач
в области 1С
Программы 1С
Цены и подробное описание программ 1С:Предприятие 8.