cnpmjs.org
Version:
Private npm registry and web for Enterprise, base on MySQL and Simple Store Service
43 lines (36 loc) • 726 B
JavaScript
/*!
* cnpmjs.org - middleware/login.js
*
* Copyright(c) cnpmjs.org and other contributors.
* MIT Licensed
*
* Authors:
* fengmk2 <fengmk2@gmail.com> (http://fengmk2.github.com)
*/
;
/**
* Module dependencies.
*/
var http = require('http');
module.exports = function *login(next) {
if (this.user.error) {
var status = this.user.error.status;
this.status = http.STATUS_CODES[status]
? status
: 500;
this.body = {
error: this.user.error.name,
reason: this.user.error.message
};
return;
}
if (!this.user.name) {
this.status = 401;
this.body = {
error: 'unauthorized',
reason: 'Login first'
};
return;
}
yield *next;
};