You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Предлагаю расширить метод добавив в Ответ "ОписаниеОшибки" и "ПодготовленныйЗапрос", использую для формирования лога ошибки (ЖР+Sentry).
Функция ВызватьHTTPМетод(Сессия, Метод, URL, ДополнительныеПараметры)
ПодготовленныйЗапрос = ПодготовитьЗапрос(Сессия, Метод, URL, ДополнительныеПараметры);
НастройкиПодключения = НастройкиПодключения(Метод, URL, ДополнительныеПараметры);
Попытка
Ответ = ОтправитьЗапрос(Сессия, ПодготовленныйЗапрос, НастройкиПодключения);
Если НастройкиПодключения.РазрешитьПеренаправление И Ответ.ЭтоРедирект Тогда
// INFO: по хорошему аутентификацию нужно привести к новых параметрам, но пока будем игнорировать.
Ответ = ПеренаправитьЗапрос(Сессия, НастройкиПодключения, ПодготовленныйЗапрос, Ответ);
КонецЕсли;
Ответ.Вставить("ОписаниеОшибки", "");
Исключение
Ответ = Новый Структура;
Ответ.Вставить("ОписаниеОшибки", ОписаниеОшибки());
КонецПопытки;
Ответ.Вставить("ПодготовленныйЗапрос", ПодготовленныйЗапрос);
Возврат Ответ;
КонецФункции
The text was updated successfully, but these errors were encountered:
Идея и желание понятное, но такое изменение не совместимо с текущим поведением всех методов, отправляющих запрос.
Оборачивая ОтправитьЗапрос() в попытку отключается проброс исключений вверх, в вызывающий код. Кто-то может на это рассчитывать. И добавляется необходимость всегда проверять значение свойства ответа "ОписаниеОшибки", чтобы понять успешно запрос выполнился или нет.
Понятно, что это из-за того, что при исключении невозможно получить исходный запрос, к нему приведший. Но уж слишком меняет использование исключений в библиотеке. Возможно есть другие способы добиться такого.
Пока на уме только какой-то выходной параметр, может в ДополнительныеПараметры какой-то спецключ добавить, куда будет что-то писаться в случае исключения
Предлагаю расширить метод добавив в Ответ "ОписаниеОшибки" и "ПодготовленныйЗапрос", использую для формирования лога ошибки (ЖР+Sentry).
The text was updated successfully, but these errors were encountered: