1.下载需要安装的插件
- 下载express
npm install express
- 下载cors,用于处理接口跨域问题
npm install cors
- 下载mysql
npm install mysql
2.配置服务器
可以在vue项目的src同级创建server文件夹(这里的位置可随意选择)
然后依次创建:
- 新建/server/app.js,用于配置服务器相关信息
const express = require('express')
const cors = require('cors')
const bodyParser = require('body-parser')
const router = require('./router') //导入路由配置,创建/server/router.js后使用const app = express()
app.use(cors())
app.use(express.urlencoded({extended: false}))
app.use(bodyParser.json())
app.use(router) //导入路由配置,创建/server/router.js后使用app.listen(3018, () => {console.log('server running at http://127.0.0.1:3018')
})
- 新建/server/db/index.js,用于配置数据库相关信息
const mysql = require('mysql');db = mysql.createPool({host: '127.0.0.1',user: 'root',password: '', // 这里使用自己数据库的密码database: 'web'// 这里使用自己数据库的名称
})module.exports = db
- 新建/server/api/user.js,用于操作数据库(这里获取user表中的数据)
let db =require('../db/index')
exports.get=(req,res)=> {let sql = 'select * from user'db.query(sql, [req.query.name, req.query.password], (err, data) => {if (err) {return res.send('错误:' + err.message)}res.send(data)})
}
- 新建/server/router.js,用于配置对应路由
let express = require('express')
let router = express.Router()
let user = require('./api/user')
router.get('/user' , user.get)
module.exports = router
3.测试服务器
好啦,到这里就可以测试下服务器是否搭建成功
在server文件夹下cmd执行
node app.js
提示“server running at http://127.0.0.1:3018”
浏览器打开http://127.0.0.1:3018/user,可看见user数据表中对应的数据,表示服务器搭建成功
我第一次使用node连接mysql8.0时,遇到了报错:
Client does not support authentication protocol requested by server; consider upgrading MySQL client
如果你遇到了相同的问题,可参考《node连接mysql报错:Client does not support authentication protocol requested by server; consider…》
最后的实现效果