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

OSCHINA-MIRROR/yuyenews-Beerus

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

Beerus — это веб-фреймворк, полностью разработанный на языке Go.

Он основан на net/http и расширяет возможности управления маршрутами, добавляет перехватчики, управление сессиями, получение параметров с помощью struct, проверку параметров и т. д. Также он предоставляет поддержку WebSocket для обновления протокола http до WebSocket и реализации коммуникации.

Установка

go get github.com/Beerus-go/Beerus@v1.1.9

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

https://beeruscc.com/beerus

Примеры

Пример HTTP

Создайте функцию для управления конфигурацией маршрутизации:

func CreateRoute() {
    // Любой метод запроса может использовать параметры функции маршрутизации для получения параметров запроса.
    // Функции маршрутизации должны иметь возвращаемое значение, поддерживаемые типы: struct, map, array
    route.POST("/example/post", func (param  DemoParam, req commons.BeeRequest, res commons.BeeResponse) (map[string]string, error) {
        if xxx {
            return nil, errors.New("The error message you want to return to the front-end")
        }
        msg := make(map[string]string)
        msg["msg"] = "success"
        return param, nil
    })
}

DemoParam

Если у вас есть подобная структура и вы хотите поместить все параметры из запроса в эту структуру:

type DemoParam struct {
    TestStringReception  string  `notnull:"true" msg:"TestStringReception Cannot be empty" routes:"/example/put"`
    TestIntReception     int     `max:"123" min:"32" msg:"TestIntReception The value range must be between 32 - 123" routes:"/example/post"`
    TestUintReception    uint    `max:"123" min:"32" msg:"TestUintReception The value range must be between 32 - 123"`
    TestFloatReception   float32 `max:"123" min:"32" msg:"TestFloatReception The value range must be between 32 - 123"`
    TestBoolReception    bool
    TestStringRegReception string `reg:"^[a-z]+$" msg:"TestStringRegReception Does not meet the regular"`
    TestBeeFileReception commons.BeeFile
    TestJsonReception []string
}

Запустите сервис:

func main() {
    routes.CreateRoute()
    beerus.ListenHTTP(8080)
}

Не-JSON режимы

func CreateRoute() {
    route.JsonMode = false
    
    route.POST("/example/post", func (param  DemoParam, req commons.BeeRequest, res commons.BeeResponse) {
        var result = params.Validation(req, &param, param)
        if result != params.SUCCESS {
            res.SendErrorMsg(1128, result)
            return
        }
        res.SendJson(`{"msg":"SUCCESS"}`)
    })
}
``` ### Пример WebSocket

Создание маршрутов WebSocket.

```go
func CreateWebSocketRoute() {
    wroute.AddWebSocketRoute("/ws/test", onConnection, onMessage, onClose)
    wroute.AddWebSocketRoute("/ws/test2", onConnection, onMessage, onClose)
}

// Чтобы сэкономить время, ниже используются только три функции. На практике вы можете настроить набор функций для каждого wroute

func onConnection(session *wparams.WebSocketSession, msg string) {
    session.SendString("connection success")
}

func onMessage(session *wparams.WebSocketSession, msg string) {
    session.SendString("I got the message.")
}

func onClose(session *wparams.WebSocketSession, msg string) {
    println(msg + "-------------------------------")
}

Запуск сервиса.

func main() {
    // Перехватчики, маршруты и т. д. Загрузка данных требует собственных вызовов
    routes.CreateRoute()
    routes.CreateWebSocketRoute()

    // Слушаем сервис и слушаем порт 8080
    beerus.ListenHTTP(8080)
}

Полный пример кода

Операции с базой данных

Beerus-DB

Лицензия

Beerus лицензирован по MIT.

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

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

Введение

Beerus — это веб-фреймворк, полностью разработанный на языке Go. Он основан на net/http и расширяет возможности управления маршрутами, добавляет перехватчики, управление сессиями и получение параметров со структурой, валидацию параметров. Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

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

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