Koa OAuth Server
Complete, compliant and well tested module for implementing an OAuth2 Server/Provider with koa in node.js.
This is the koa wrapper for oauth2-server.
Installation
$ npm install koa-oauth-server-gowhich
Quick Start
The module provides two middlewares - one for granting tokens and another to authorise them. koa-oauth-server
and, consequently oauth2-server
, expect the request body to be parsed already.
The following example uses koa-bodyparser
but you may opt for an alternative library.
var koa = ;var bodyparser = ;var oauthserver = ; var app = ; appoauth = ; app;app; app; app;
koa-router
with koa-mount
Using If you wish to integrate with koa-router
using koa-mount
, you may do so by combining them to mount a specific prefix for oauth operations:
var Router = ;var bodyparser = ;var koa = ;var model = ;var mount = ;var oauthserver = ; // Create a new koa app.var app = ; // Create a router for oauth.var router = ; // Enable body parsing.app; // See https://github.com/thomseddon/node-oauth2-server for specification.appoauth = ; // Mount `oauth2` route prefix.app; // Register `/token` POST path on oauth router (i.e. `/oauth2/token`).router; // Start koa server.app;
Then attempt to be granted a new oauth token:
curl -XPOST -d 'username=thomseddon&password=nightworld&grant_type=password&client_id=thom&client_secret=nightworld' http://localhost:3000/oauth2/token