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

OSCHINA-MIRROR/zensh-toa

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

Toa

Toa — это лаконичный и мощный веб-фреймворк.

Toa

NPM version Build Status js-standard-style Coverage Status [![Downloads][downloads-image]][downloads-url]

Спасибо Koa и его авторам

Демо

const Toa = require('toa')
const app = Toa(function () {
  // эта функция будет выполняться после всех промежуточных программ
  this.body = this.state
})
// поддержка функции синхронизации промежуточного программного обеспечения
app.use(function () {
  this.state.syncFn = 'поддержка!'
})
// Поддержка функции thunk промежуточного программного обеспечения
app.use(function (next) {
  this.state.thunkFn = 'поддержка!'
  setTimeout(next, 10)
})
// Поддержка функции генератора промежуточного программного обеспечения
app.use(function * () {
  this.state.generatorFn = yield Promise.resolve('поддержка!')
})
// Поддержка асинхронной функции промежуточного программного обеспечения в babel или Node.js v7~
// babel-node --presets es2015 --plugins transform-async-to-generator example/simple.js
app.use(async function () {
  this.state.asyncFn = await Promise.resolve('поддержка!')
})

app.listen(3000)

Установка

npm install toa

Введение в Toa

Toa — это улучшенная версия Koa.

Toa, основанный на Koa, имеет аналогичную базовую архитектуру с Koa: context, request и response — три основных объекта. Однако Toa использует комбинацию функций thunks для реализации асинхронного потока управления и обработки исключений.

Асинхронное ядро Toa основано на функциях thunk. Оно поддерживает node.js v0.10.x, но в среде node, поддерживающей генераторы (io.js, node.js >= v0.11.9), будет более удобный опыт программирования: использование синхронной логики для написания неблокирующих асинхронных программ.

Изучение и опыт работы с Toa и Koa одинаковы, и переключение между ними практически незаметно. Но Toa устраняет каскадную логику Koa, усиливает промежуточные программы и модули, а также ограничивает доступ сторонних компонентов к приложению, делая структуру и логику больших приложений более лаконичными и безопасными.

Процесс Koa

koa Process

Процесс Toa

Toa Process

Функциональные модули

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

Пользователи могут выбирать независимые функциональные модули или промежуточные программы или создавать собственные функциональные модули в соответствии со своими потребностями. Вот основные функциональные модули, предоставляемые Toajs. Они могут удовлетворить большинство потребностей приложений.

  • toa-pm Диспетчер событий процесса для toa.
  • toa-ejs Модуль рендеринга Ejs для toa.
  • toa-mejs Модуль рендеринга Mejs для toa.
  • toa-i18n Промежуточное ПО i18n для toa.
  • toa-body Парсер тела запроса для toa.
  • toa-token Токен на основе аутентификации для toa.
  • toa-router Маршрутизатор trie для toa.
  • toa-static Статический серверный модуль для toa.
  • toa-morgan Промежуточное программное обеспечение регистратора HTTP-запросов для Toa.
  • toa-favicon Значок фавикона для toa.
  • toa-session Сессионное промежуточное ПО для toa.
  • toa-compress Промежуточное ПО сжатия ответов для toa.
  • toa-ratelimit Интеллектуальный модуль ограничения скорости для toa.
  • toa-cookie-session Промежуточное ПО cookie-сессии для toa.

Bench

API

Руководство по использованию

Приложение

Контекст

Запрос

Ответ

Журнал изменений

[downloads-url]: https://npmjs.org/package/toa [downloads-image]: http://img.shields.io/npm/dm/toa.svg?style=flat-square

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

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

Введение

Новое поколение фреймворков для веб-серверов Node.js. Развернуть Свернуть
MIT
Отмена

Обновления

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

Участники

все

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

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