UNPKG

vesh

Version:

码农nodejs版本VESH框架,使用函数责任链模式 实现了 默认文件跳转,自定义错误页,空文件处理,URL解析,Querystring与Form参数解析,PostFiles解析,MVC自动映射,SQL自动服务化,可继承页面,静态文件,json,tjson,jsonp,tjsonp,string,void,xjson,xjosnp等等6种JSON格式,http与https等等操作

122 lines (85 loc) 4.38 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.LoginModuler = undefined; var _regenerator = require('babel-runtime/regenerator'); var _regenerator2 = _interopRequireDefault(_regenerator); var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator'); var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2); var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _tool = require('gcl/com/coooders/common/tool'); var _tool2 = _interopRequireDefault(_tool); var _ni = require('gcl/com/coooders/db/ni'); var _ni2 = _interopRequireDefault(_ni); var _tool3 = require('gcl/com/coooders/io/tool'); var _tool4 = _interopRequireDefault(_tool3); var _app = require('../../V/Control/app'); var _coreModulers = require('../../V/Control/core-modulers'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * LoginModuler:LoginModuler处理未登录时请求非过滤的动态页面,则弹回登录页 */ var LoginModuler = exports.LoginModuler = function (_AModuler) { (0, _inherits3.default)(LoginModuler, _AModuler); function LoginModuler(loginurl) { var igoreg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '.*'; var valid = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'html'; (0, _classCallCheck3.default)(this, LoginModuler); var _this = (0, _possibleConstructorReturn3.default)(this, (LoginModuler.__proto__ || (0, _getPrototypeOf2.default)(LoginModuler)).call(this, "LoginModuler")); var __ = {}; valid.split(';').filter(function (v) { return _tool2.default.isValid(v); }).forEach(function (k) { return __[k] = true; }); pri(_this, { loginurl: loginurl, igoreg: new RegExp(igoreg, 'i'), valid: __ }); if (!loginurl) throw new Error('必须定义默认登录页面!'); return _this; } (0, _createClass3.default)(LoginModuler, [{ key: 'onrequest', value: function () { var _ref = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(req, rep, session) { var _pri, _, __, extend; return _regenerator2.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: _pri = pri(this), _ = _pri._, __ = _pri.__; extend = session.url.pathname.split('.').slice(1).join('.') || ''; if (!(__.valid[extend] && !__.igoreg.test(session.url.pathname) && !session.User.Login)) { _context.next = 7; break; } session.redirect(__.loginurl); return _context.abrupt('return', true); case 7: return _context.abrupt('return', false); case 8: case 'end': return _context.stop(); } } }, _callee, this); })); function onrequest(_x3, _x4, _x5) { return _ref.apply(this, arguments); } return onrequest; }() }]); return LoginModuler; }(_app.AModuler); exports.default = { LoginModuler: LoginModuler }; var pri = _tool2.default.pris(); //# sourceMappingURL=power.js.map