Расширенный список примеров использования
Все методы выполнения представлены в модуле КлиентHTTPКлиентСервер
.
Получить
– GETПолучитьЗаголовки
– HEADОтправитьТекст
– POST, тело содержит текстОтправитьДвоичныеДанные
– POST, тело содержит двоичные данныеОтправитьФайл
– POST, тело содержит двоичные данные переданного по имени файлаОтправитьДанныеФормы
– POST, тело содержит данные форматаmultipart/form-data
ОтправитьДанныеHTMLФормы
– POST, тело содержит данные форматаapplication/x-www-form-urlencoded
ЗаписатьТекст
– PUT, тело содержит текстЗаписатьДвоичныеДанные
– PUT, тело содержит двоичные данныеЗаписатьФайл
– PUT, тело содержит двоичные данные переданного по имени файлаУдалить
– DELETE, допускается тело в виде текста
Методы выполнения возвращают фиксированную структуру со следующими полями:
КодСостояния
– Число – код состояния ответаЗаголовки
– Соответствие – заголовки ответаТело
– ДвоичныеДанные | Строка | Структура | Соответствие | ОбъектXDTO | ЗначениеXDTO | Неопределено – содержимое тела ответаИмяФайлаТела
– Строка | Неопределено – имя файла с содержимым тела ответа
Ответ = КлиентHTTPКлиентСервер.Получить("https://ya.ru");
URI = "https://evilinsult.com/generate_insult.php";
ПЗ = КлиентHTTPКлиентСервер.НовыеПараметрыЗапроса();
// Добавим параметры URL: ?lang=ru&type=json
КлиентHTTPКлиентСервер
.ДобавитьПараметр(ПЗ, "lang", "ru")
.ДобавитьПараметр(ПЗ, "type", "json");
Ответ = КлиентHTTPКлиентСервер.Получить(URI, ПЗ);
Текст = ПолучитьСтрокуИзДвоичныхДанных(Ответ.Тело);
// Пример сохранения тела ответа в файл
URI = "https://upload.wikimedia.org/wikipedia/commons/0/0d/Africa_and_Europe_from_a_Million_Miles_Away.png";
ДП = КлиентHTTPКлиентСервер.НовыеДополнительныеПараметры();
Ответ = КлиентHTTPКлиентСервер
.УстановитьИмяВыходногоФайла(ДП, "С:\tmp\pic.png")
.Получить(URI, , ДП);
URI = "https://jsonplaceholder.typicode.com/posts";
Данные = "{""title"": ""foo"", ""body"": ""bar"", ""userId"": 1}";
ДП = КлиентHTTPКлиентСервер.НовыеДополнительныеПараметры();
Ответ = КлиентHTTPКлиентСервер
.УстановитьТипMIME(ДП, КлиентHTTPПовтИсп.ТипMIMEJSON())
.УстановитьКодировку(ДП, КлиентHTTPПовтИсп.КодировкаUTF16())
.ОтправитьТекст(URI, Данные, ДП);
Текст = ПолучитьСтрокуИзДвоичныхДанных(Ответ.Тело);
URI = "https://httpbin.org/post";
ПФ = КлиентHTTPКлиентСервер.НовыеПоляФормы();
ФайлПоля = Новый Файл("C:\temp\1.png");
Ответ = КлиентHTTPКлиентСервер
.ДобавитьПолеФормыФайл(ПФ, "my_file", ФайлПоля, ФайлПоля.Имя, КлиентHTTPСлужебный.ТипMIMEРасширенияФайла(ФайлПоля.Расширение))
.ДобавитьПолеФормыТекст(ПФ, "user_name", "Имярек")
.ОтправитьДанныеФормы(URI, ПФ);
Текст = ПолучитьСтрокуИзДвоичныхДанных(Ответ.Тело);
оURI = КлиентHTTPКлиентСервер.ОбъектИдентификатораРесурса("httpbin.org", , "post"); // https://httpbin.org/post
ПФ = КлиентHTTPКлиентСервер.НовыеПоляФормы();
ДП = КлиентHTTPКлиентСервер.НовыеДополнительныеПараметры();
Ответ = КлиентHTTPКлиентСервер
.ДобавитьПолеHTMLФормы(ПФ, "user_name", "Имярек")
.ДобавитьПолеHTMLФормы(ПФ, "role", "Сотрудник")
.ТелоОтветаКакТекст(ДП)
.ОтправитьДанныеHTMLФормы(оURI, ПФ, ДП);
ДП = КлиентHTTPКлиентСервер.НовыеДополнительныеПараметры();
Ответ = КлиентHTTPКлиентСервер
.УстановитьDigestАвторизацию(ДП, "login", "password")
.Получить("http://192.168.1.1", , ДП);
включение Cookie и перенаправлений
ДП = КлиентHTTPКлиентСервер.НовыеДополнительныеПараметры();
КлиентHTTPКлиентСервер.ИспользоватьСессию(ДП);
Ответ1 = КлиентHTTPКлиентСервер.Получить("https://www.google.com/search?q=infostart", , ДП);
Ответ2 = КлиентHTTPКлиентСервер.Получить("https://play.google.com/store/search?q=infostart", , ДП);