1С 8.3 GET запрос к HTTP серверу
Данные > Примеры кода 1С > 1С 8.3 HTTP
Перейти в раздел примеры кода 1С 8.3:
Get запрос к серверу в 1С 8.3:
&НаКлиенте
Процедура GetЗапрос()
ЗаголовкиЗапроса = Новый Соответствие;
ЗаголовкиЗапроса.Вставить("Data", "format=woff2");
ЗаголовкиЗапроса.Вставить("Base", "1C");
ЗаголовкиЗапроса.Вставить("Cookie", "session=701");
HTTPЗапрос=Новый HTTPЗапрос();
HTTPЗапрос.Заголовки=ЗаголовкиЗапроса;
HTTPЗапрос.АдресРесурса="clients/list";
//Новый HTTPСоединение(Сервер, Порт, Пользователь, Пароль, Прокси, Таймаут, ЗащищенноеСоединение, ИспользоватьАутентификациюОС)
// c таймаутом 60 секунд
HTTPСоединение=Новый HTTPСоединение("api.yourserver.by",,,,,30);//полный URL в запросе http://api.yourserver.ru/clients/list
СервераОтвет=HTTPСоединение.Получить(HTTPЗапрос);
ОтветSRV=СервераОтвет.ПолучитьТелоКакСтроку();
КодSRV=СервераОтвет.КодСостояния;
Если КодSRV=200 тогда
ReadXML=Новый ЧтениеXML;
ReadXML.УстановитьСтроку(ОтветSRV);
Попытка
КонтрагентыСписокXDTO=ФабрикаXDTO.ПрочитатьXML(ReadXML,ФабрикаXDTO.Тип("http://api.yourserver.ru/xdto","ClientList"));
Исключение
Сообщить(ИнформацияОбОшибке());
Предупреждение("Сервер прислал плохие данные!");
Возврат;
КонецПопытки;
//обработчик объекта XDTO
Иначе
//обработчик ошибочных кодов
КонецЕсли;
КонецПроцедуры
Процедура GetЗапрос()
ЗаголовкиЗапроса = Новый Соответствие;
ЗаголовкиЗапроса.Вставить("Data", "format=woff2");
ЗаголовкиЗапроса.Вставить("Base", "1C");
ЗаголовкиЗапроса.Вставить("Cookie", "session=701");
HTTPЗапрос=Новый HTTPЗапрос();
HTTPЗапрос.Заголовки=ЗаголовкиЗапроса;
HTTPЗапрос.АдресРесурса="clients/list";
//Новый HTTPСоединение(Сервер, Порт, Пользователь, Пароль, Прокси, Таймаут, ЗащищенноеСоединение, ИспользоватьАутентификациюОС)
// c таймаутом 60 секунд
HTTPСоединение=Новый HTTPСоединение("api.yourserver.by",,,,,30);//полный URL в запросе http://api.yourserver.ru/clients/list
СервераОтвет=HTTPСоединение.Получить(HTTPЗапрос);
ОтветSRV=СервераОтвет.ПолучитьТелоКакСтроку();
КодSRV=СервераОтвет.КодСостояния;
Если КодSRV=200 тогда
ReadXML=Новый ЧтениеXML;
ReadXML.УстановитьСтроку(ОтветSRV);
Попытка
КонтрагентыСписокXDTO=ФабрикаXDTO.ПрочитатьXML(ReadXML,ФабрикаXDTO.Тип("http://api.yourserver.ru/xdto","ClientList"));
Исключение
Сообщить(ИнформацияОбОшибке());
Предупреждение("Сервер прислал плохие данные!");
Возврат;
КонецПопытки;
//обработчик объекта XDTO
Иначе
//обработчик ошибочных кодов
КонецЕсли;
КонецПроцедуры
Get запрос к локальному ресурсу в 1С 8.3:
&НаКлиенте
Функция GetЗапросLocalHost()
//http://localhost:8000/sendmessage/?phonenumber=+375296000000&text=Allo
HTTPСоединение = Новый HTTPСоединение("localhost", 8000);
ЗаголовкиЗапроса = Новый Массив;
ЗаголовкиЗапроса.Добавить(СтрШаблон("%1=%2", "phonenumber", "+375296000000"));
ЗаголовкиЗапроса.Добавить(СтрШаблон("%1=%2", "text", "Allo"));
ЗаголовкиСтрока = СтрСоединить(ЗаголовкиЗапроса, "&");
Если ЗаголовкиЗапроса.Количество() > 0 Тогда
АдресРесурса = СтрШаблон("sendmessage/?%1", ЗаголовкиСтрока);
Иначе
АдресРесурса = "sendmessage/";
КонецЕсли;
HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса);
Результат = HTTPСоединение.ВызватьHTTPМетод("GET", HTTPЗапрос);
Функция GetЗапросLocalHost()
//http://localhost:8000/sendmessage/?phonenumber=+375296000000&text=Allo
HTTPСоединение = Новый HTTPСоединение("localhost", 8000);
ЗаголовкиЗапроса = Новый Массив;
ЗаголовкиЗапроса.Добавить(СтрШаблон("%1=%2", "phonenumber", "+375296000000"));
ЗаголовкиЗапроса.Добавить(СтрШаблон("%1=%2", "text", "Allo"));
ЗаголовкиСтрока = СтрСоединить(ЗаголовкиЗапроса, "&");
Если ЗаголовкиЗапроса.Количество() > 0 Тогда
АдресРесурса = СтрШаблон("sendmessage/?%1", ЗаголовкиСтрока);
Иначе
АдресРесурса = "sendmessage/";
КонецЕсли;
HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса);
Результат = HTTPСоединение.ВызватьHTTPМетод("GET", HTTPЗапрос);
Возврат Результат;
КонецФункции
КонецФункции
0
комментарии
____________________
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник