HttpСервисОтвет
Стд::HttpСервисы::HttpСервисОтвет Базовые типы: Объект |
Доступность: Сервер |
Иерархия типа
graph TD;
HttpСервисОтвет["HttpСервисОтвет"]-->Объект["Объект"];
Результат выполнения обработчика HTTP-сервиса. Доступ к экземпляру осуществляется через свойство Ответ параметра обработчика.
Сравнение ссылочное
Свойства
Заголовки
ТолькоЧтение Заголовки: ЗаголовкиHttp |
Доступность: Сервер |
Заголовки ответа.
Заголовки ответа могут быть изменены только до начала записи тела. После начала записи тела попытка изменения заголовков будет приводить к исключению.
КодСтатуса
КодСтатуса: Число |
Доступность: Сервер |
Код состояния (ответа), возвращаемый HTTP-сервисом.
Причина
ТолькоЧтение Причина: Строка |
Доступность: Сервер |
Текстовая расшифровка кода HTTP-статуса.
Методы
ОткрытьПотокЗаписиТела
ОткрытьПотокЗаписиТела(Размер: Число? = Неопределено): ПотокЗаписи
Доступность: Сервер |
Возвращает поток для записи тела. После вызова методы установки заголовков и установки тела запрещены, будет выброшено исключение ИсключениеНедопустимоеСостояние.
Если размер Размер
не задан, то устанавливает ‘Transfer-Encoding: Chunked’ Если размер задан, то устанавливает заголовок ‘Content-Length’
При попытке записать в поток больше чем нужно данных выбрасывает исключение. Если на момент окончания выполнения запроса данных записано меньше, то соединение закрывается.
Рекомендуется пользоваться методами УстановитьТело
в большинстве случаев. Данный метод следует использовать необходимости потоковое передачи данных.
Примеры
метод ОтдатьКартинку(Ответ: HttpСервисОтвет)
исп СодержимоеПоток = Ресурс{Картинка.png}.ОткрытьПотокЧтения()
СодержимоеПоток.КопироватьВ(Ответ.ОткрытьПотокЗаписиТела())
;
УстановитьКодСтатуса
УстановитьКодСтатуса(КодСтатуса: Число)
Доступность: Сервер |
Устанавливает код статуса ответа КодСтатуса
. Код статуса нельзя изменить после того как начата запись тела. В этом случае при попытке изменить код будет выброшено исключение.
УстановитьТело
УстановитьТело(Тело: Байты)
Доступность: Сервер |
Перегрузка: УстановитьТело(Тело: Строка, Кодировка: Строка = “UTF-8”) УстановитьТело(Тело: ДвоичныйОбъект.Ссылка) |
Устанавливает тело ответа из байтов Тело
. Также устанавливает заголовок ‘Content-Length’. После вызова методы установки заголовков и установки тела запрещены, будет выброшено исключение ИсключениеНедопустимоеСостояние.
УстановитьТело
УстановитьТело(Тело: ДвоичныйОбъект.Ссылка)
Доступность: Сервер |
Устанавливает тело ответа из двоичных данных Тело
. Также устанавливает заголовок ‘Content-Length’. После вызова методы установки заголовков и установки тела запрещены, будет выброшено исключение ИсключениеНедопустимоеСостояние.
УстановитьТело
Доступность: Сервер |
Перегрузка: УстановитьТело(Тело: Байты) УстановитьТело(Тело: ДвоичныйОбъект.Ссылка) |
Устанавливает тело ответа из строки Тело
в кодировке Кодировка
. Также устанавливает заголовок ‘Content-Length’. После вызова методы установки заголовков и установки тела запрещены, будет выброшено исключение ИсключениеНедопустимоеСостояние.
Примеры
метод ТекущееВремя(Запрос: HttpСервисЗапрос)
Запрос.Ответ.УстановитьТело(Время.Сейчас().ВСтроку())
;