koa1配合mongoose实现异步返回数据

问题描述

版本:koa@1.2.2,mongoose@5.4.1

请求/test,查询并返回的doc是有信息的,但前端老是提示接口404,是不是要异步返回数据库查询的数据,但不知道怎么写,求解答

//server.js
let koa = require('koa');
let app = new koa();
let koa_router = require('koa-router');
let router = new koa_router();
let koaBd = require('koa-body');
let koaBody = new koaBd();

// mongoose操作
let mongoose = require('mongoose');
let Store = require('./models/store');

//连接MongoDB数据库
mongoose.connect('mongodb://admin:admin@localhost:27017/test',{useNewUrlParser: true});

mongoose.connection.on("connected", function () {
  console.log("MongoDB connected success.")
});

mongoose.connection.on("error", function () {
  console.log("MongoDB connected fail.")
});

mongoose.connection.on("disconnected", function () {
  console.log("MongoDB connected disconnected.")
});

// 获取动效库列表
router.get('/test', function* (next) {
    var _this = this;

    var resData = {}

    Store.find({},(err,doc)=>{
        if(err){
            console.log('error')
        }else{
            _this.body = {
                list:doc
            };
        }
    });
});

app.use(router.routes()).use(router.allowedMethods());
app.listen(3001);

console.log('listen at http://localhost:3001');
console.log('--------数据服务启动成功--------');
//./models/store.js
let mongoose = require('mongoose');
let Schema = mongoose.Schema;

let storeSchema = new Schema({
    "name": String,
    "detail": String,
})

module.exports = mongoose.model('Store',storeSchema);
阅读 1.7k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进