文档章节

Koa2+mongodb+mongoose+passport

igoryuyu
 igoryuyu
发布于 2018/08/12 15:50
字数 322
阅读 71
收藏 0

koa2

app.js

const mongodb = require('mongodb')
const mongoose = require('mongoose')
const db = 'mongodb://localhost:27017/console'
mongoose.Promise = require('bluebird')
mongoose.connect(db)

const Koa = require('koa')
const logger = require('koa-logger')
// const morgan = require('morgan'); // 命令行log显示
const bodyparser = require('koa-bodyparser')
const onerror = require('koa-onerror')
const views = require('koa-views')
const json = require('koa-json')
const session = require('koa-session')
// const passport = require('passport');// 用户认证模块passport
const Strategy = require('passport-http-bearer').Strategy;// token验证模块

const ejs = require('ejs')
const app = new Koa()

onerror(app)
app.keys = ['WEBSITE']
const CONFIG = {
  key: 'koa:sess', /** (string) cookie key (default is koa:sess) */
  /** (number || 'session') maxAge in ms (default is 1 days) */
  /** 'session' will result in a cookie that expires when session/browser is closed */
  /** Warning: If a session cookie is stolen, this cookie will never expire */
  maxAge: 86400000,
  overwrite: true, /** (boolean) can overwrite or not (default true) */
  httpOnly: true, /** (boolean) httpOnly or not (default true) */
  signed: true, /** (boolean) signed or not (default true) */
  rolling: false, /** (boolean) Force a session identifier cookie to be set on every response. The expiration is reset to the original maxAge, resetting the expiration countdown. (default is false) */
  renew: false, /** (boolean) renew session when session is nearly expired, so we can always keep user logged in. (default is false)*/
};
app.use(session(CONFIG, app));
// app.use(passport.initialize());// 初始化passport模块
app.use(bodyparser())
app.use(json())
app.use(logger())
// app.use(morgan('dev'));// 命令行中显示程序运行日志,便于bug调试
// app.use(session(app))
app.use(require('koa-static')(__dirname + '/public'))

app.use(views(__dirname + '/dist', {
  map : {html:'ejs'}
}))



const routers = require('./router/routes')()
app.use(routers.routes())
   .use(routers.allowedMethods())

app.on('error', (err, ctx) => {
  console.error('server error', err, ctx)
});

app.listen(8080, () => {
  console.log('------------------------------------------')
  console.log('app listen on port 8080-------------------')
  console.log('------------------------------------------')
})

© 著作权归作者所有

igoryuyu
粉丝 0
博文 15
码字总数 31758
作品 0
徐汇
高级程序员
私信 提问

暂无文章

Kafka再平衡机制详解

所谓的再平衡,指的是在kafka consumer所订阅的topic发生变化时发生的一种分区重分配机制。一般有三种情况会触发再平衡: consumer group中的新增或删除某个consumer,导致其所消费的分区需要...

爱宝贝丶
17分钟前
11
0
element 验证 请输入大于0的整数

data() { var validatePass = (rule, value, callback) => { // if (value <= 0) { // callback(new Error('请输入大于0的整数')); // } else { // c......

沉迷代码我爱学习
28分钟前
4
0
报表工具花钱or开源?我对比了这6个工具

近一年都在处理报表问题,调研了不少报表工具,也开发了适合公司业务的报表应用。分享一些关于如何选择报表工具的个人观点,希望对你有参考作用。 对于大部分企业来说,能花时间和人力去开发...

帆软
28分钟前
3
0
自建redis笔记--Redis cluster搭建

Redis cluster搭建 2018年十月 Redis 发布了稳定版本的 5.0 版本,推出了各种新特性,其中一点是放弃 Ruby的集群方式,改为 使用 C语言编写的 redis-cli的方式,是集群的构建方式复杂度大大降...

北极之北
28分钟前
3
0
分享一个在caffe中实现的yolo层

这是别人实现的,是我移植到cc的cpu实现,可以实现caffe中使用yolo3,但是我感觉实际效果不如darknet 好点 template <typename Dtype>inline Dtype sigmoid(Dtype x){return 1. / (1. ...

开飞色
30分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部