npm.io
0.0.7 • Published 7 years ago

@ra-data-simple-rest-backend/auth-koa

Licence
MIT
Version
0.0.7
Deps
5
Size
192 kB
Vulns
3
Weekly
0
Install scriptsThis package runs scripts during installation (preinstall/install/postinstall)

Auth Koa

Router for authentication and Middleware for authorization.

Install

@ra-data-simple-rest-backend/auth-koa

Usage

import Koa from 'koa'
import koaBody from 'koa-body'
import Router from 'koa-router'

import request from 'supertest'
import { buildAuth } from '@ra-data-simple-rest-backend/auth-koa'

const app = new Koa()
app.use(koaBody())

const admins = [{ username: 'takashi', password: 'my_password' }]
const auth = buildAuth('my secret', admins)

const router = new Router()
router.use('/auth', auth.router.routes(), auth.router.allowedMethods())

const apiRouter = new Router()
apiRouter.get('/sample', async ctx => {
    ctx.body = 'ok'
})
router.use(auth.middleware, apiRouter.routes(), apiRouter.allowedMethods())

app.use(router.routes()).use(router.allowedMethods())