Skip to content

Commit

Permalink
багфикс и ап осени
Browse files Browse the repository at this point in the history
  • Loading branch information
Nivanchenko committed Oct 9, 2023
1 parent f30bd59 commit 4572a7b
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 3 deletions.
2 changes: 1 addition & 1 deletion packagedef
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@
.ВключитьФайл("README.md")
.ВключитьФайл("package-loader.os")
.ЗависитОт("asserts", "1.4.0")
.ЗависитОт("autumn", "3.1.4")
.ЗависитОт("autumn", "3.3.0")
.ЗависитОт("autumn-cli", "1.0.4")
.ЗависитОт("json")
.ЗависитОт("autumn-logos", "1.1.1")
Expand Down
15 changes: 13 additions & 2 deletions src/Классы/ВходящийЗапрос.os
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@

ЧастьРазделителя = ПолучитьДвоичныеДанныеИзСтроки("--");
ЧастьРазделителяСВКПС = ПолучитьДвоичныеДанныеИзСтроки("--" + Символы.ВК + Символы.ПС);
РазделительСтрок = ПолучитьДвоичныеДанныеИзСтроки(Символы.ВК + Символы.ПС);

Если СтрНайти(НРег(Заголовки["Content-Type"]), "multipart/form-data") > 0 Тогда
РазделительДанных = СокрЛП(СтрЗаменить(Заголовки["Content-Type"], "multipart/form-data; boundary=", ""));
Expand All @@ -78,7 +79,7 @@
КонецЕсли;
Структура = Новый Структура("Метаданные, Значение", Новый Соответствие);

РазделеннаяЧастьФормы = Парсеры.РазделитьДвоичныеДанныеРазделителемВМассив(ЧастьФормы, ПолучитьДвоичныеДанныеИзСтроки(Символы.ВК + Символы.ПС));
РазделеннаяЧастьФормы = Парсеры.РазделитьДвоичныеДанныеРазделителемВМассив(ЧастьФормы, РазделительСтрок);

Если РазделеннаяЧастьФормы[РазделеннаяЧастьФормы.ВГраница()] = ЧастьРазделителя Тогда
РазделеннаяЧастьФормы.Удалить(РазделеннаяЧастьФормы.ВГраница());
Expand All @@ -89,19 +90,29 @@
ИначеЕсли РазделеннаяЧастьФормы.Количество() > 1 Тогда
Структура.Значение = РазделеннаяЧастьФормы[РазделеннаяЧастьФормы.ВГраница()];
РазделеннаяЧастьФормы.Удалить(РазделеннаяЧастьФормы.ВГраница());
Метаданные = СоединитьДвоичныеДанные(РазделеннаяЧастьФормы);
МетаданныеДД = Новый Массив();
Для Каждого РазделеннаяЧасть из РазделеннаяЧастьФормы Цикл
МетаданныеДД.Добавить(РазделеннаяЧасть);
МетаданныеДД.Добавить(РазделительСтрок);
КонецЦикла;
Метаданные = СоединитьДвоичныеДанные(МетаданныеДД);
Иначе
Продолжить;
КонецЕсли;

СтрокиМетаданных = СтрРазделить(ПолучитьСтрокуИзДвоичныхДанных(Метаданные), Символы.ПС, Ложь);

ПлоскиеЗаголовки = Новый Соответствие();

Для Каждого СтрокаМетаданных из СтрокиМетаданных Цикл
РазделеннаяСтрока = Парсеры.РазделитьСтроку(СтрокаМетаданных, ":");
ПлоскиеЗаголовки.Вставить(СокрЛП(РазделеннаяСтрока.Лево), СокрЛП(РазделеннаяСтрока.Право));
Структура.Метаданные.Вставить(СокрЛП(РазделеннаяСтрока.Лево),
УбратьКовычкиИзЗначенийСоответствия(Парсеры.ПараметрыИзТекста(РазделеннаяСтрока.Право, "; ")));
КонецЦикла;

Структура.Метаданные.Вставить("Заголовки", ПлоскиеЗаголовки);

ДанныеФормы.Добавить(Структура);

КонецЦикла
Expand Down

0 comments on commit 4572a7b

Please sign in to comment.