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

OSCHINA-MIRROR/lunny-tango

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README_CN.md 7.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 05:59 952f9f6

Танго — это микроядро Go Web-фреймворка, разработанное с использованием модульного и инъекционного подхода. Разработчики могут выборочно включать или отключать функции фреймворка в соответствии со своими бизнес-потребностями и даже создавать полнофункциональные Web-разработки на основе богатого набора промежуточных программ.

Особенности:

  • мощный и гибкий дизайн маршрутизации;
  • совместимость с существующими http.Handler;
  • модульная конструкция на основе промежуточных программ, позволяющая гибко настраивать функциональность фреймворка;
  • высокопроизводительный способ внедрения зависимостей.

Установка Tango:

go get gitea.com/lunny/tango

Быстрый старт:

Вот пример классического использования Tango:

package main

import (
    "errors"

    "gitea.com/lunny/tango"
)

type Action struct {
    tango.JSON
}

func (Action) Get() interface{} {
    if true {
        return map[string]string{
            "say": "Hello tango!",
        }
    }
    return errors.New("something error")
}

func main() {
    t := tango.Classic()
    t.Get("/", new(Action))
    t.Run()
}

После запуска этого кода и перехода по адресу http://localhost:8000 вы получите ответ JSON:

{"say":"Hello tango!"}

Если изменить значение true на false, то ответ будет содержать ошибку:

{"err":"something error"}

Этот код возвращает значение JSON автоматически, так как он использует встроенный tango.JSON.

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

Общение и обсуждение:

Примеры использования:

  • Бухгалтерский форум — бухгалтерский форум.
  • GopherTC — Golang China.
  • Wego — танго в сочетании с xorm для разработки форума.
  • Pugo — блог.
  • DBWeb — веб-инструмент управления базами данных.
  • Godailygithub RSS-агрегатор.
  • Gos — простой сервер статических файлов.
  • GoFtpd — FTP-сервер на чистом Go, кроссплатформенный.

Список промежуточных программ:

Промежуточные программы (https://gitea.com/tango) позволяют повторно использовать код и упрощают работу:

  • recovery — восстановление после паники.
  • compress — сжатие Gzip и Deflate.
  • static — обслуживание статических файлов.
  • logger — регистрация запроса и внедрение Logger в структуру действия.
  • param — получение параметров маршрутизатора.
  • return — интеллектуальная обработка возвращаемого значения.
  • context — внедрение контекста в структуру действий.
  • sessionCircleCI codecov менеджер сеансов, session-redis, session-nodb, session-ledis, session-ssdb.
  • xsrfCircleCI codecov генерирует и проверяет токены csrf.
  • binding — Связывает и проверяет формы.

Renders — шаблонный движок Go.

Поддерживает несколько приложений на одном сервере.

Dispatch.

Поддержка шаблонизатора Pongo2.

Tpongo2.

Captcha.

Captcha.

События до и после.

Events.

Делит данные между запросами.

Flash.

Показывает подробную отладочную информацию в журнале.

Debug.

Базовое промежуточное ПО для аутентификации.

BasicAuth.

Управляет разрешениями через ACL, RBAC, ABAC.

Authz.

Промежуточное ПО кеширования — кеш-память, кеш-файл, cache-ledis, cache-nodb, cache-mysql, cache-postgres.

Cache. Кэш-сервер Memcache, кэш-сервер Redis — контроль доступа на основе ролей (RBAC).

Лицензия

Этот проект находится под лицензией BSD. Полный текст лицензии смотрите в файле LICENSE.

Опубликовать ( 0 )

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

1
https://api.gitlife.ru/oschina-mirror/lunny-tango.git
git@api.gitlife.ru:oschina-mirror/lunny-tango.git
oschina-mirror
lunny-tango
lunny-tango
master