1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/yuyenews-Magician

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Magician — небольшой пакет HTTP-сервиса на основе Netty, который позволяет легко запустить HTTP-сервис и поддерживает WebSocket с использованием аннотированной конфигурации Handler.

Если вы хотите разработать HTTP-сервис с помощью Netty, но находите это сложным, то Magician может вам помочь.

Среда выполнения

JDK11+


Пакет Jar для центральной библиотеки Maven поддерживает как минимум JDK11, но исходный код может поддерживать как минимум jdk8. Если вам нужно работать на версии 8, вы можете загрузить последний тег и скомпилировать его самостоятельно.

Документация

https://magician-io.com

Пример

Импорт зависимостей

<dependency>
    <groupId>com.github.yuyenews</groupId>
    <artifactId>Magician</artifactId>
    <version>2.0.7</version>
</dependency>

<!-- Это пакет логирования, он необходим, иначе консоль ничего не увидит. Поддерживается любой пакет логирования, который может взаимодействовать со slf4j -->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-jdk14</artifactId>
    <version>1.7.12</version>
</dependency>

Создание HTTP-службы

Создайте обработчик

@HttpHandler(path="/")
public class DemoHandler implements HttpBaseHandler {

    @Override
    public void request(MagicianRequest magicianRequest, MagicianResponse response) {
        // ответные данные
        magicianRequest.getResponse()
                .sendJson(200, "{'status':'ok'}");
    }
}

Запустите HTTP-службу

Magician.createHttp()
    .scan("имя пакета, в котором находится обработчик")
    .bind(8080);

Создание WebSocket

@WebSocketHandler(path = "/websocket")
public class DemoSocketHandler implements WebSocketBaseHandler {
   
    @Override
    public void onOpen(WebSocketSession webSocketSession) {
     
    }
   
    @Override
    public void onClose(WebSocketSession webSocketSession) {
        
    }

    @Override
    public void onMessage(WebSocketSession webSocketSession, byte[] message) {

    }
}

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
MIT
Отмена

Обновления (7)

все

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/yuyenews-Magician.git
git@api.gitlife.ru:oschina-mirror/yuyenews-Magician.git
oschina-mirror
yuyenews-Magician
yuyenews-Magician
master