| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
parent directory.. | ||||
Проект добавляет с систему типов OneScript новый класс
ВебСерверС портом по умолчанию (8080):
ВебСервер = Новый ВебСервер();
ВебСервер.Запустить();На указанном порту:
Порт = 7000;
ВебСервер = Новый ВебСервер(Порт);
ВебСервер.Запустить();Middleware принимает в качестве параметра объект HTTPКонтекст, предоставляющий информацию о соединении, входящем и исходящем запросе и 2-м параметров делегат на вызов следующего middleware в контейнере. От порядка регистрации обработчиков в конвейере зависит порядок обработки запросах и то, делегат на какой обработчик придет в параметре "СледующийОбработчик"
Процедура МаппингСтраниц(Контекст, СледующийОбработчик) Экспорт
Путь = ПолучитьПутьСтраницы(Контекст);
Если Новый Файл(Путь).Существует() Тогда
ЗаписатьФайлВОтвет(Контекст.Ответ, Путь);
Иначе
СледующийОбработчик.Вызвать(Контекст);
КонецЕсли;
КонецПроцедуры
Порт = 7000;
ВебСервер = Новый ВебСервер(Порт);
ВебСервер.ДобавитьОбработчикЗапросов(ЭтотОбъект, "МаппингСтраниц");
ВебСервер.Запустить();Процедура ОбработчикВебСокетПодключений(Контекст, СледующийОбработчик) Экспорт
Если Контекст.ВебСокеты.ЭтоВебСокетЗапрос Тогда
Сокет = Контекст.ВебСокеты.ПодключитьВебСокет();
Пока Сокет.Состояние = СостояниеВебСокета.Открыт Цикл
ПринятаяСтрока = Сокет.ПолучитьСтроку();
ПринятыеДанные = ДесериализоватьJson(ПринятаяСтрока);
Сообщение = Новый Структура("user, message", "Server", "You sent: " + ПринятыеДанные.message);
Сокет.ОтправитьСтроку(СериализоватьJson(Сообщение));
КонецЦикла;
Иначе
СледующийОбработчик.Вызвать(Контекст);
КонецЕсли;
КонецПроцедуры
Порт = 7000;
ВебСервер = Новый ВебСервер(Порт);
ВебСервер.ИспользоватьВебСокеты();
ВебСервер.ДобавитьОбработчикЗапросов(ЭтотОбъект, "ОбработчикВебСокетПодключений");
ВебСервер.Запустить();| Back | FazBrowse Home | New Git URL |