处理跨域 和连接mongodb

处理跨域

koa2-cors

使用方法 npm instarll koa2-cors –save

//处理跨域问题
const cors =require('koa2-cors')
app.use(cors())

里面可以配置很多参数 具体可以去看npm文档

app.js

//引入Koa 并实例化
const Koa = require('koa')
const app = new Koa() 
//处理跨域问题
const cors =require('koa2-cors')
app.use(cors())
//可以忽略
const views = require('koa-views')
//koa 中间件 json转化
const json = require('koa-json')
//错误处理
const onerror = require('koa-onerror')
// 自动转化res -》请求
const bodyparser = require('koa-bodyparser')
//日志
const logger = require('koa-logger')
//定义路由
const index = require('./routes/index')
const db =require("./routes/db")
// 导入mysql中间件
const mysql= require('mysql');
// error handler
onerror(app)

// middlewares
app.use(bodyparser({
  enableTypes:['json', 'form', 'text']
}))
app.use(json())
app.use(logger())
//静态资源托管
app.use(require('koa-static')(__dirname + '/public'))
//模板引擎  可以忽略
app.use(views(__dirname + '/views', {
  extension: 'pug'
}))

// logger
app.use(async (ctx, next) => {
  const start = new Date()
  await next()
  const ms = new Date() - start
  console.log(`${ctx.method} ${ctx.url} - ${ms}ms`)
})

// routes  定义路由的处理
app.use(index.routes(), index.allowedMethods())

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

module.exports = app

连接mogodb

const router = require('koa-router')();
//导入mongodb模块
const MongoClient = require('mongodb').MongoClient;


router.get('/', async (ctx, next) => {
    ctx.body = '跑起来啦!!!'
});
router.get("/connect",async (ctx,next)=>{
    let {query}=ctx;
    // Connection url
    const url = 'mongodb://'+query.host+':'+query.port;
    // const url = 'mongodb://localhost:27017';
    // Database Name
    await MongoClient.connect(url).then((client)=>{
            return  ctx.body={
                statusCode:200,
                msg:"数据库连接成功"
            }

    });
})
module.exports = router
分类: Node

1 条评论

111 · 2018年9月7日 上午12:11

66666

发表评论

电子邮件地址不会被公开。