node+express 搭建商城專案(2-操作Mysql完成注冊賬號介面)
- 今天我們 用 express 和 mysql 插件完成 mysql資料庫的操作
- 下面開始安裝資料庫 插件
npm install mysql --save-dev
- 安裝完畢之后,開始配置資料庫,
- 在外層目錄新建一個 model檔案夾 新建 db.js檔案

- 在 db檔案里面 我們配置 鏈接資料庫的基本配置
- 還有小伙伴們沒有安裝 mysql的 請先安裝好哦 博主的 是8以上的版本
var mysql = require('mysql'); //匯入 mysql 模塊
let dbConfig = {
host: 'localhost', // ip
port: '3306', // 埠號
user: 'root', // 賬戶
password: 'as946640', // 密碼
database: 'shopmall' // 資料庫名稱
}
- 保存 然后我們再 撰寫一個查詢函式 并且匯出該函式
- 博主這里 用了 Promise來進行封裝 更簡便明了
module.exports = {
query: function (sql, params, callback) {
//每次使用的時候需要創建鏈接,資料操作完成之后要關閉連接
var connection = mysql.createConnection(dbConfig)
// 封裝 Promoise 回傳結果
return new Promise((resolve, reject) => {
connection.connect((err) => {
// 回傳錯誤
if (err) reject(err)
// 執行查詢
connection.query(sql, params, (err, rows) => {
if (err) reject(err)
// 釋放連接,否則會卡頓
connection.end((err) => {
if (err) reject(err)
})
// 回傳結果
resolve(rows)
})
})
})
}
};
- 接下來就到了我們的正題了 在 router 檔案 新建 user模塊 處理用戶介面

- 接下來 進入正題 撰寫我們的 user 模塊 用戶注冊介面
- 首先我們先引入 db檔案操作資料 以及 express 然后實體化路由
var express = require('express');
var router = express.Router();
const db = require('./../../model/db.js')
最后撰寫我們的 注冊介面 并且匯出
/* 注冊用戶. */
router.post('/register', async (req, res) => {
const {
userName,
password
} = await req.body; // 獲取 用戶產地來的資料
// 新建 插入 sql
const sql = `INSERT INTO user (userName,password) VALUES ( '${userName}','${password}')`
try {
// 執行 sql查詢函式 回傳結果
let blogs = await db.query(sql)
if (blogs) {
res.json({
code: 200,
msg: '注冊成功'
})
}
} catch (error) {
// 錯誤處理
res.json({
code: 500,
msg: error.sqlMessage
})
}
});
module.exports = router;
- 小伙伴們 記得 在 入口檔案 app.js 掛載下 當前user.js路由檔案哦
var usersRouter = require('./routes/user/users');
app.use('/users', usersRouter);
- 現在我們進行介面測驗 博主這里用了 ApiPost 國產還是很強大的

- 最后資料庫查看我們注冊的資料

- 發現我們注冊的資料已經提交給資料庫里 完結撒花
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/264561.html
標籤:其他
