安裝egg
- npm i egg-init -g
- egg-init egg-example --type=simple
- cd egg-example
- npm i
啟動(dòng)
- npm run dev
- open localhost:7001
跨域設(shè)置
- 安裝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: '*', // 訪問(wèn)白名單,根據(jù)你自己的需要進(jìn)行設(shè)置
allowMethods: 'GET,HEAD,PUT,POST,DELETE,PATCH'
};
配置mogosse
文檔 mongoose是nodeJS提供連接 mongodb的一個(gè)庫(kù),官網(wǎng)地址,學(xué)習(xí)文檔
安裝
npm install egg-mongoose --save
- 測(cè)試連接是否成功,前提是你已經(jīng)按照好了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, '連接數(shù)據(jù)庫(kù)失敗'));
con.once('open', () => {
console.log('連接成功');
});
- 配置
// config/plugin.js
exports.mongoose = {
enable: true,
package: 'egg-mongoose',
};
// config/config.default.js
config.mongoose = {
url: 'mongodb://你的mongodb地址/apiExample',
options: {},
};
- 編寫(xiě)一個(gè)添加用戶接口
- 新建文件 /model/user.js 若無(wú)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')