Eggjs为前端提供数据接口
创建项目
初始化项目
$ mkdir egg-example && cd egg-example
$ npm init egg --type=simple
$ npm i
启动项目
$ npm run dev
$ open http://localhost:7001
官方地址 > https://www.eggjs.org/zh-CN/intro/quickstart
连接数据库
安装插件
$ npm i --save egg-mysql
开启插件:
// config/plugin.js
exports.mysql = {
enable: true,
package: 'egg-mysql',
};
笔者配置多个数据Mysql源
在 config/config.${env}.js 配置各个环境的数据库连接信息。
exports.mysql = {
clients: {
// clientId, 获取client实例,需要通过 app.mysql.get('clientId') 获取
db1: {
// host
host: 'mysql.com',
// 端口号
port: '3306',
// 用户名
user: 'test_user',
// 密码
password: 'test_password',
// 数据库名
database: 'test',
},
db2: {
// host
host: 'mysql2.com',
// 端口号
port: '3307',
// 用户名
user: 'test_user',
// 密码
password: 'test_password',
// 数据库名
database: 'test',
},
// ...
},
// 所有数据库配置的默认值
default: {},
// 是否加载到 app 上,默认开启
app: true,
// 是否加载到 agent 上,默认关闭
agent: false,
};
官方配置地址 > https://www.eggjs.org/zh-CN/tutorials/mysql
开始干接口
第一步
首先在 app/router.ts文件下 新增登陆接口
第二步
在app/controller文件下新增login.ts文件
第三步
在app/service 文件下新增login.ts文件
此时此刻简单的一个post 请求接口就已经完成了
注意
这个时候我们需要去关注一个关于安全防范的问题csrf
我们只需要在本地开发的时候配置白名单即可
当然了如果你要是想用在企业级项目中自己去读文档安全威胁csrf的防范