请问门户网站是什么意思,wordpress 无法安装,公司网站怎么免费建,实训做网站收获前言
各位好#xff0c;我是前端SkyRain。最近为了响应公司号召#xff0c;开始对后端知识的学习#xff0c;作为纯粹小白#xff0c;记录下每一步的操作流程。 项目仓库#xff1a;https://gitee.com/sky-rain-drht/drht-node 因为写了文档#xff0c;代码里注释不是很…前言
各位好我是前端SkyRain。最近为了响应公司号召开始对后端知识的学习作为纯粹小白记录下每一步的操作流程。 项目仓库https://gitee.com/sky-rain-drht/drht-node 因为写了文档代码里注释不是很多可以结合理解
初始化文件夹
创建文件夹
在合适的位置创建一个文件夹作为项目代码本地仓库
node初始化
执行命令
npm init -y执行结果 Git初始化
执行命令
git init执行结果 安装依赖
执行命令
yarn add ip
yarn add koa
yarn add koa-bodyparser
yarn add koa-router
yarn add mysql2
yarn add nodemon
yarn add sequelize依赖说明
ip
用于获取服务器地址信息
koa
node的后端框架之一
koa-bodyparser
用于解析接口请求传递的参数
koa-router
与koa框架配合的路由库
mysql2
mysql数据库
nodemon
用来启动node服务
sequelize
mysql数据的关系映射库
启动服务配置
配置文件
为了保持未来的配置内容进行扩展所以各自定义后导出
创建配置文件夹
根目录下创建config文件夹在config文件夹下创建index.js
创建启动配置
config/index.js
const ip require(ip);
// 运行配置
const serverSetting {ipAddress: ip.address(), // 服务器ipport: 3000, // 服务器端口proxy: api // 代理名称
}
module.exports {serverSetting
}启动类文件
创建启动类文件
app.js
const Koa require(koa);
const { serverSetting } require(./config);const app new Koa();app.listen(serverSetting.port, () {console.log(server is running at http://${serverSetting.ipAddress}:${serverSetting.port}/${serverSetting.proxy})
})创建启动命令
在package.json中创建启动命令
scripts: {dev: nodemon app.js,test: echo \Error: no test specified\ exit 1
},至此可以运行命令看看服务能不能跑起来
数据库配置
数据库信息配置
config/index.js
// 数据库配置
const dbSetting {host: localhost, // 数据库ipport: 3306, // 数据库端口username: root, // 数据库用户名password: skyrain, // 数据库密码database: drht // 数据库名称
}
module.exports {...,dbSetting
}数据库连接
创建连接文件
在根目录下创建models文件夹在models文件夹下创建index.js
连接信息内容
models/index.js
const { Sequelize } require(sequelize);
const { dbSetting } require(../config/index)const sequelize new Sequelize(dbSetting.database,dbSetting.username,dbSetting.password,{host: dbSetting.host,port: dbSetting.port,dialect: mysql,logging: false,timezone: 08:00,pool: {max: 5, // 连接池最大连接数量min: 0,idle: 10000, // 如果一个线程在10秒内没有被使用过就释放掉},define: {timestamps: true, // 自动带上更新时间和修改时间freezeTableName: true // 冻结表名否则同步时会自动加s}}
)
sequelize.sync({force: false
})
// // 测试是否连接成功
// sequelize
// .authenticate()
// .then(() {
// console.log(数据库连接成功);
// })
// .catch(err {
// console.log(数据库连接失败, err);
// })
module.exports { db: sequelize }