Skip to content

Releases: autumn-library/winow

v0.5.4

09 Oct 10:26
Compare
Choose a tag to compare
  • Немного логгирования в обработке ошибок точек маршрута
  • Появился метод для обновления на горячую файлов статистики РегистраторКаталогаФайлов.ОбновтитьСтатичныеФайлы();
  • Исправлены ошибки
  • Поднята версия осени.

v0.5.3

03 Oct 22:00
0b84fac
Compare
Choose a tag to compare

Добавлена поддержка Content-Type: multipart/form-data.
В точку маршрута можно можно получить специализированный объект "ДанныеФормы", который может отдавать части используя поиск по метаданным.

Процедура ОбработкаФормы(ДанныеФормы, Ответ) Экспорт
	Ответ.Модель = Новый Структура("Имя, ДатаРождения, Фото");
	Ответ.Модель.Имя = ДанныеФормы.НайтиЗначениеСтрокойПоМетаданным(Новый Структура("name", "name"));
	Ответ.Модель.ДатаРождения = ДанныеФормы.НайтиЗначениеСтрокойПоМетаданным(Новый Структура("name", "age"));
	Ответ.Модель.Фото = ПолучитьBase64СтрокуИзДвоичныхДанных(ДанныеФормы.НайтиЗначениеПоМетаданным(Новый Структура("name", "file")));
КонецПроцедуры;

v0.5.2

01 Sep 10:57
Compare
Choose a tag to compare

Появилось api для подписок на события обработки шаблонов. См. документацию

v0.5.1

06 Aug 17:19
Compare
Choose a tag to compare
  • Для точки маршрута добавлена аннотация &НеВыводитОтображениеКонтроллера, которая отключает окружение результата ответа, данными общего отображения контроллера.
  • Скорректирован демо шаблон, который формируется при вызове winow init

v0.5.0

05 Aug 22:33
25cbbeb
Compare
Choose a tag to compare
  • Переехали но новую cli
  • Параметр winow.АвтоСтарт теперь по умолчанию Ложь

v0.4.1

20 Jul 22:26
Compare
Choose a tag to compare
  • Исправлен баг: не корректное чтение параметров из шаблонного url, когда точка маршрута находилась в корневом("/") контроле.
  • Добавлен тип контента "swf" - "application/x-shockwave-flash"

v0.4.0

10 Mar 22:13
850ef7b
Compare
Choose a tag to compare
  • Внутренности подверглись серьезному рефакторингу
  • В документации добавлено описание запуска в докере
  • Добавлена экспериментальная поддержка протокола web-socket (смотри примеры и документацию)

v0.3.0

04 Jan 10:55
f3fb0ba
Compare
Choose a tag to compare
  • Поднята зависимость ОСени
  • Поднята зависимость оскрипта
  • Исправлены некоторые проблемы с кодировкой на ос windows
  • Описание контроллеров сокращено до минимума
&Контроллер("/my/control/path")
Процедура ПриСозданииОбъекта()

КонецПроцедуры

v0.2.1

21 Dec 18:52
Compare
Choose a tag to compare

Управление автоматическим стартом сервера через файл настроек.

{ "winow":
  {
    "АвтоСтарт": true
  }
}

v0.2.0

29 Sep 20:38
Compare
Choose a tag to compare

Изменения:

  • Упрощен запуск приложения.

Было:

#Использовать winow

// Создадим сервер, который будет центром мироздания.
Сервер = ФабрикаСерверов.СоздатьСервер();	

//Установим желаемый порт
Сервер.Настройки.Порт = 3331;

// В целях удобства разработки и отладки, отключим обработку запросов в ФЗ
Сервер.Настройки.ЗапросВФоновыхЗаданиях = Ложь;

// Для того, что бы сервер знал, как обрабатывать входящие запросы, в него нужно такой фунционал загрузить. Можно это сделать вот такой командой из каталога.
// Первый параметр - произвольное имя приложения, второй - каталог, в котором находятся классы, для управления логикой обработки запросов.
КонтекстПриложения = Сервер.МенеджерПриложений.ДобавитьПриложениеИзКаталога("ПриветМир", "./hwapp");

// Запуск сервера
Сервер.Старт();

Стало:

#Использовать autumn
#Использовать winow

Поделка = Новый Поделка;
Поделка.ЗапуститьПриложение();
  • Автоматическая загрузка желудей winow при подключении библиотеки

  • Объединены контексты winow и загружаемых контролов.

  • Шаблонные параметры в url точки маршрута

&ТочкаМаршрута("calc/plus/{Число1}/{Число2}")
Процедура ШаблонныеПараметрыСложение(Ответ, Число1, Число2) Экспорт
	Ответ.УстановитьТипКонтента("txt");
	Ответ.ТелоТекст = Число(Число1) + Число(Число2);
КонецПроцедуры
  • Изменена аннотация контролов

Было:

&Контроллер("/")
&Желудь
Процедура ПриСозданииОбъекта()

Стало:

&Желудь
&Прозвище("Контроллер")
&Маршрут("/")
Процедура ПриСозданииОбъекта()
  • Изменения в конфигурировании через json

  • автоматическая сериализация входящих Content-Type:application/json и Content-Type:application/x-www-form-urlencoded

  • Гибкий набор параметров в точках маршрута

  • Для удобства разработки веб приложения хочется разделить отображения, и добавить что-то общее для всех точек маршрута. Например общая html разметка, с заголовками, меню, подвалом и тд. Для этих целей есть возможность с помощью аннотации в конструкторе контрола указать общий шаблон.

&Желудь
&Прозвище("Контроллер")
&Маршрут("/demoviews")
&Отображение(Шаблон = "./hwapp/view/main.html", Метод = "ПолучитьМодельКонтрола")
Процедура ПриСозданииОбъекта()

КонецПроцедуры

Функция ПолучитьМодельКонтрола(Запрос) Экспорт
	Модель = Новый Структура("Заголовок, Дата", "Демонстрация работы отображений", Запрос.ДатаПолучения);

	Возврат Модель;
КонецФункции

Где &Отображение(Шаблон = "./hwapp/view/main.html", Метод = "ПолучитьМодельКонтрола") аннотация, указывает где расположен шаблон, и каким методом для него формируется модель с данными. Параметры этого метода так же могут быть выбраны, аналогично методам точек маршрута.

А вот так выглядит общий шаблон

!doctype html>
<html>
<head>
<title>{{Модель.Заголовок}}</title>
</head>
<body>
<div>Шапка страницы! Дата получения запроса: {{Модель.Дата}}</div>

@Контент

<div>Подвал страницы</div>
</body>
</html>

Где тег @Контент будет заменен результатом ответа точки маршрута.

  • Обновленная документация

  • Исправлены ошибки

  • Добавлены тесты основного функционала