Капитально об программе 1С 8.0-8.3-8.4, 7.7

Как при httpСоединении в 1С использовать cookies

Часто внешние сервисы в результате авторизации отдают куки, которые необходимо передавать в последующих запросах. Ниже пример ка к авторизоваться средствами 1С через POST-запрос и получить данные через GET-запрос.

В примере АдресРесурса = адрес авторизации, АдресРесурса2  = адрес получения данных

СтрокаПараметров = "{
	|    ""login"": ""capitally.ru"",
	|    ""password"": ""123456""
	|  }";
HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса);
HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаПараметров, КодировкаТекста.UTF8);
HTTPЗапрос.Заголовки.Вставить("Accept", "application/json");
HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");
HTTPЗапрос.Заголовки.Вставить("lang", "ru");
	
Прокси = Новый ИнтернетПрокси;

Таймаут = 5;
HTTPСоединение = Новый HTTPСоединение(АдресСервиса,,,,
	Прокси,
	Таймаут,
);
Попытка
	Ответ = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
Исключение
КонецПопытки;
//Сохраняем куки из запроса авторизации
Cookie = Ответ.Заголовки["Set-Cookie"];
	
HTTPЗапрос = Новый HTTPЗапрос(АдресРесурса2);
HTTPЗапрос.Заголовки.Вставить("Accept", "application/json");
HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/json");
HTTPЗапрос.Заголовки.Вставить("lang", "ru");
//Передаем куки в новый запрос
HTTPЗапрос.Заголовки.Вставить("Cookie", Cookie);

//Сохраняем ответ в файл
ИмяВремФайла = ПолучитьИмяВременногоФайла("xml");
Ответ = HTTPСоединение.Получить(HTTPЗапрос,ИмяВремФайла);