提示工具:node调试工具:chrome://inspect 浏览器打开(先跑koa2)

npm安装

npm i koa --save

 router安装

npm install koa-router --save

 get请求获取请求头参数

router.get('/listData', async (ctx, next) =>{  //ctx 包含了request 和response
    console.log(ctx.query);  //{ aid: '123' }       获取的是对象   用的最多的方式  **推荐
    console.log(ctx.querystring);  //aid=123&name=zhangsan      获取的是一个字符串
    console.log(ctx.url);   //获取url地址
    let obj = {
        name:'guangfa',
        age:18
    }
    ctx.body = obj //ctx.body返回数据
})

 post需要用到Koa 中koa-bodyparser中间件

 1.安装 npm install --save koa-bodyparser

 2.app.js引入使用他(注意要在router前引入和使用)

const bodyParser = require('koa-bodyparser'); //post请求的中间件
app.use(bodyParser());

 

 app.js 
1
const Koa = require('koa') 2 const bodyParser = require('koa-bodyparser'); //post请求的中间件 3 4 const app = new Koa() 5 6 app.use(bodyParser()); 7 8 let router = require('./router/allRoute') //引入路由 9 10 app.use(router.routes()) //使用路由和启用 11 app.use(router.allowedMethods()); 12 13 14 app.listen(3000,()=>{ 15 console.log('服务已经启动 通过http://192.168.0.4:3000/') 16 })

 

aiiRouter.js
1
//总路由配置 2 3 const router = require('koa-router')(); 4 5 router.get('/listData', async (ctx, next) =>{ //ctx 包含了request 和response 6 console.log(ctx.query); //{ aid: '123' } 获取的是对象 用的最多的方式 **推荐 7 console.log(ctx.querystring); //aid=123&name=zhangsan 获取的是一个字符串 8 console.log(ctx.url); //获取url地址 9 let obj = { 10 name:'guangfa', 11 age:18 12 } 13 ctx.body = obj //ctx.body返回数据 14 }) 15 16 router.post('/login', async (ctx, next) =>{ 17 //ctx.request.body 获取post请求的参数 18 ctx.body = ctx.request.body 19 }) 20 module.exports = router; //导出路由

 mongodb可视化管理工具https://www.mongodb.com/download-center/compass?jmp=hero

koa2配置跨域 , 拷贝放入app.js 在使用路由前面配置

app.use(async (ctx, next)=> {
    ctx.set('Access-Control-Allow-Origin', '*');
    ctx.set('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild');
    ctx.set('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');
    if (ctx.method == 'OPTIONS') {
      ctx.body = 200; 
    } else {
      await next();
    }
  });

  

 

posted on 2019-06-05 14:53  菜鸡H  阅读(372)  评论(0编辑  收藏  举报