问题描述
版本: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);