在開發網站或者應用程序時,經常需要將數據存儲在數據庫中,而MySQL是一個非常流行的關系型數據庫管理系統。本文將介紹如何使用Koa2連接MySQL。
首先,我們需要安裝Koa2和Mysql2:
npm install koa@2.0.0 npm install mysql2@1.2.0
接下來,在我們的應用程序中引入這兩個模塊:
const Koa = require('koa'); const Router = require('koa-router'); const mysql = require('mysql2/promise');
然后,我們需要創建一個連接池,這樣我們就可以在整個應用程序中共享一個連接:
const pool = mysql.createPool({ host: 'localhost', user: 'root', password: 'password', database: 'mydatabase' });
上面的代碼創建了一個連接池,指定了數據庫的名稱、用戶名、密碼和主機名。你需要根據你的實際情況對這些參數進行修改。
接下來,我們可以創建一個路由,并在路由中使用我們剛剛創建的連接池來查詢數據庫:
const router = new Router(); router.get('/users', async (ctx, next) =>{ try { const [rows] = await pool.query('SELECT * FROM users'); ctx.body = rows; } catch (e) { ctx.throw(500, e.message); } });
上面的代碼創建了一個路由,當應用程序收到 /users 的 HTTP GET 請求時,它將查詢數據庫中的所有用戶,然后將它們作為 JSON 對象返回給客戶端。
最后,在我們的應用程序中啟動Koa2服務器:
const app = new Koa(); app.use(router.routes()); app.use(router.allowedMethods()); app.listen(3000, () =>{ console.log('Server is listening on port 3000'); });
上面的代碼創建了一個Koa2應用程序,并將它綁定到本地3000端口。它還使用我們創建的路由處理所有HTTP請求。