CentOS 环境 Node + Koa2 连接 MySQL (ECS系列三)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了CentOS 环境 Node + Koa2 连接 MySQL (ECS系列三),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2422字,纯文字阅读大概需要4分钟。
内容图文
![CentOS 环境 Node + Koa2 连接 MySQL (ECS系列三)](/upload/InfoBanner/zyjiaocheng/526/097b8e42e8da42c8b4a0479b6ffb6602.jpg)
Koa 搭建服务
新建一个文件夹 koa_server,进入后
cnpm i -S koa
会生成 node_modules 依赖包,以及 package.json
创建文件 server.js,并写入
const Koa = require(‘koa‘);
const app = new Koa();
app.use( async ( ctx ) => {
ctx.body = ‘hello koa2‘
})
app.listen(3000)
console.log(‘app running at port 3000.‘);
运行 node server.js
即可,这是最简单的http服务。
在ecs安全组,提前开放 3000 端口访问权限。
浏览器中打开 localhost:3000 就能看到 koa 已经在运行。
然后可以加入中间件(middleware)
const Koa = require(‘koa‘);
const app = new Koa();
// logger
app.use(async (ctx, next)=>{
await next();
const rt = ctx.response.get(‘X-Response-Time‘);
console.log(`${ctx.method} ${ctx.url} - ${rt}`)
})
// x-response-time
app.use(async (ctx, next)=>{
const start = Date.now();
await next();
const ms = Date.now() - start;
ctx.set(‘X-Response-Time‘, `${ms}ms`)
})
app.use( async ( ctx ) => {
ctx.body = ‘hello koa2‘
})
app.listen(3000)
console.log(‘app running at port 3000.‘);
关于中间件,此处不再展开。
koa 相关内容,可参考 Koa 2
安装 MySQL 连接库
cnpm i -S mysql
创建文件 mysql/index.js
var mysql = require(‘mysql‘);
var connection = mysql.createConnection({
host : ‘MySQL主机地址‘,
user : ‘root‘,
password : ‘MySQL登录密码‘,
database : ‘MySQL数据库‘
});
class Mysql {
query (param) {
return new Promise((resolve, reject) => {
// user 数据表中查询 user_name 为 param 的数据
connection.query(
`SELECT * from user WHERE user_name=‘${param}‘`,
function (error, results, fields) {
if (error) {
return reject(error)
};
resolve(results)
});
})
}
}
module.exports = new Mysql()
然后在 server.js 中引用
const Koa = require(‘koa‘);
const app = new Koa();
const mysql = require(‘./mysql/index‘);
// logger
app.use(async (ctx, next)=>{
await next();
const rt = ctx.response.get(‘X-Response-Time‘);
console.log(`${ctx.method} ${ctx.url} - ${rt}`)
})
// x-response-time
app.use(async (ctx, next)=>{
const start = Date.now();
await next();
const ms = Date.now() - start;
ctx.set(‘X-Response-Time‘, `${ms}ms`)
})
app.use(async (ctx) => {
let data = await mysql.query()
ctx.body = {
"code": 10,
"data": data,
"mesg": ‘ok‘
}
})
app.listen(3000)
console.log(‘app running at port 3000.‘);
CentOS 环境 Node + Koa2 连接 MySQL (ECS系列三)
标签:nod roo 安全组 tps 权限 target param targe pack
本文系统来源:https://www.cnblogs.com/_error/p/13231796.html
内容总结
以上是互联网集市为您收集整理的CentOS 环境 Node + Koa2 连接 MySQL (ECS系列三)全部内容,希望文章能够帮你解决CentOS 环境 Node + Koa2 连接 MySQL (ECS系列三)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。