egg+mongodb 配置

安装egg

  • npm i egg-init -g
  • egg-init egg-example --type=simple
  • cd egg-example
  • npm i

启动

  • npm run dev
  • open localhost:7001
跨域设置
  • 安装egg-cors模块
npm i egg-cors --save-dev
  • 在 /config/plugin.js里面添加跨域插件
exports.cors = {
    enable: true,
    package: 'egg-cors',
};
  • 在 /config/config.default.js 添加以下代码
  config.cors = {
      origin: '*', // 访问白名单,根据你自己的需要进行设置
      allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH'
  };

配置mogosse

  1. 文档 mongoose是nodeJS提供连接 mongodb的一个库,官网地址,学习文档

  2. 安装

npm install egg-mongoose --save
  1. 测试连接是否成功,前提是你已经按照好了mongodb
const mongoose = require('mongoose');
mongoose.connect('mongodb://132.232.87.95:27017/test');
const con = mongoose.connection;
con.on('error', console.error.bind(console, '连接数据库失败'));
con.once('open', () => {
  console.log('连接成功');
});
  1. 配置
// config/plugin.js
exports.mongoose = {
    enable: true,
    package: 'egg-mongoose',
};
// config/config.default.js
config.mongoose = {
    url: 'mongodb://你的mongodb地址/apiExample',
    options: {},
};

  1. 编写一个添加用户接口
  • 新建文件 /model/user.js 若无model则新建,user.js代码如下
'use strict';

module.exports = app => {
  const mongoose = app.mongoose;
  const Schema = mongoose.Schema;

  const UserSchema = new Schema({
    userName: {
      type: String,
      unique: true,
      required: true,
    },
  });
  return mongoose.model('User', UserSchema);
};

  • 新建文件 /service/user.js
'use strict';

const Service = require('egg').Service;
class UserService extends Service {
  // 更新用户信息
  async add() {
    const {
      ctx,
    } = this;
    const result = await ctx.model.User.create({
      userName: 'huruqing',
    });
    return result;
  }
}
module.exports = UserService;

  • 新建文件 /controller/user.js
'use strict';

const Controller = require('egg').Controller;

class UserController extends Controller {
  async add() {
    this.ctx.body = this.ctx.service.user.add();
  }
}

module.exports = UserController;

  • 添加路由
router.get('/user/add')

mongoose常用操作

你可能感兴趣的:(egg+mongodb 配置)