Ответ.ПолучитьТелоКакСтроку() Пустая строка
Сначала в ответ записывалось "Калькуляция", так как должно быть и передавалось, но когда Ответ.ПолучитьТелоКакСтроку () выдавало пустую строку. Перезапустил Apache, обновил публикацию, теперь такая ошибка. Это обмен. Я должен получить то, что не записалось , в моем случае это "Калькуляция".
Если ЗначениеЗаполнено(Изделие) И ЗначениеЗаполнено(Поставки) И ЗначениеЗаполнено(Калькуляция) Тогда
ЧтениеJSON.Закрыть();
Возврат Ответ;
Иначе
ЧтениеJSON.Закрыть();
Ответ.УстановитьТелоИзСтроки(?(ЗначениеЗаполнено(Изделие),"", "Изделие") + ?(ЗначениеЗаполнено(Поставки),"", "Поставки") + ?(ЗначениеЗаполнено(Калькуляция),"", "Калькуляция"));
Ответ.КодСостояния = 304;
Возврат Ответ;
КонецЕсли;
ПоказатьПрикрепленные файлы:
По теме из базы знаний
Найденные решения
Пустое тело на 304 код состояния - так и должно быть по документации Hypertext Transfer Protocol (HTTP/1.1)
https://tools.ietf.org/html/rfc7232#section-4.1
A 304 response cannot contain a message-body; it is always terminated
by the first empty line after the header fields.
by the first empty line after the header fields.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(6)
Сделайте так:
Что будет в СтрокаДляОтвета?
Сделайте так:
СтрокаДляОтвета = ?(ЗначениеЗаполнено(Изделие),"", "Изделие") + ?(ЗначениеЗаполнено(Поставки),"", "Поставки") + ?(ЗначениеЗаполнено(Калькуляция),"", "Калькуляция");
Сообщить(СтрокаДляОтвета);
Ответ.УстановитьТелоИзСтроки(СтрокаДляОтвета );
Что будет в СтрокаДляОтвета?
(7)
СтрокаДляОтвета = ?(ЗначениеЗаполнено(Изделие),"", "Изделие") + ?(ЗначениеЗаполнено(Поставки),"", "Поставки") + ?(ЗначениеЗаполнено(Калькуляция),"", "Калькуляция");
Сообщить(СтрокаДляОтвета);
Ответ.УстановитьТелоИзСтроки(СтрокаДляОтвета );
Сообщить(СтрокаДляОтвета);
Ответ.УстановитьТелоИзСтроки(СтрокаДляОтвета );
Прикрепленные файлы:
(22)
На багборде есть такая ошибка:
Описание:
В HTTP-сервисе после вызова метода ПолучитьТелоКакСтроку объекта HTTPСервисОтвет возвращается пустой ответ.
Способ обхода:
Повторно вызывать метод HTTPСервисОтвет.УстановитьТелоИзСтроки.
https://bugboard.v8.1c.ru/error/000010103
Но она давно исправлена, с 8.3.7.1759
На багборде есть такая ошибка:
Описание:
В HTTP-сервисе после вызова метода ПолучитьТелоКакСтроку объекта HTTPСервисОтвет возвращается пустой ответ.
Способ обхода:
Повторно вызывать метод HTTPСервисОтвет.УстановитьТелоИзСтроки.
Но она давно исправлена, с 8.3.7.1759
(2)
Пример
Пример
ЗапросPOST = Запрос;
ЗаголовкиHTTP = Новый Соответствие;
ЗаголовкиHTTP.Вставить("Content-Type","application/json");
ЗапросНН = Новый HTTPЗапрос(СтруктураURI.ПутьНаСервере,ЗаголовкиHTTP);
ЗапросНН.УстановитьТелоИзСтроки(Запрос);
Попытка
НТТРОтвет_ = Соединение.ОтправитьДляОбработки(ЗапросНН, Объект.ВыходнойФайл);
Исключение
Сообщить(ОписаниеОшибки());
КонецПопытки;
Показать
Пустое тело на 304 код состояния - так и должно быть по документации Hypertext Transfer Protocol (HTTP/1.1)
https://tools.ietf.org/html/rfc7232#section-4.1
A 304 response cannot contain a message-body; it is always terminated
by the first empty line after the header fields.
by the first empty line after the header fields.
А то, что Вы попытались через Shift+F9 вычислить выражение
- тоже так и должно выдавать ошибку, потому что Shift+F9 предназначен для вычисления функций или получения свойств. Выполнять процедуры/методы Shift+F9 никогда не умел.
Ответ.УстановитьТелоИзСтроки(?(ЗначениеЗаполнено(Изделие),"", "Изделие") + ?(ЗначениеЗаполнено(Поставки),"", "Поставки") + ?(ЗначениеЗаполнено(Калькуляция),"", "Калькуляция"))
- тоже так и должно выдавать ошибку, потому что Shift+F9 предназначен для вычисления функций или получения свойств. Выполнять процедуры/методы Shift+F9 никогда не умел.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот