node搭建一个简易的接口
一. 环境准备
1.安装node
可通过官网下载安装包,也可通过nvm安装,nvm可以管理多版本的node的下载切换,非常好用
(这是我之前发布的使用nvm的详细教程)
nvm下载安装node详细教程
2.安装mysql
mysql下载官网:
MySQL :: MySQL Community Downloads
安装就无脑下一步
3.下载数据库工具
我这里使用的是Navicat,大家可以自行下载
安装完成后打开软件,新建数据库(demo1)–>表(user)
二.发起请求
新建一个index.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- post方式请求 -->
<form action="http://localhost:8080" method="post">
<input type="text" name="userName" />
<input type="password" name="password" />
<input type="submit" name="提交" />
</form>
</body>
</html>
三.写接口
1.建立一个项目文件夹demo1
2.通过cmd进入这个文件夹
3.在cmd中输入npm install mysql回车,安装mysql依赖; 出现mysql@版本即安装成功
4.新建一个service.js文件
//引入各种依赖(除了mysql外,都是node自带的不需要额外下载)
const http = require('http');
const querystring = require('querystring')
const url = require('url')
const mysql = require('mysql')
//创建http连接
const server = http.createServer((req,res)=>{
const reqUrl = req.url
if(reqUrl !== '/favicon.ico'){ //由于网站图标也会被当做一次请求,所以给取消掉
let postVal = ""; //存放接收值的变量
req.on('data',(chunk)=>{
postVal+=chunk
})
req.on('end',()=>{
// 拿到的结果
let formVal = querystring.parse(postVal); //将拿到的字符串转为对象
let {userName,password} = formVal
console.log(userName,password);
// 创建数据库链接
const connection = mysql.createConnection({
host:'localhost', //主机名/ip地址 (在本地跑就用localhost)
user:'root', //安装mysql时设置的账号密码
password:'123@qwe',
database:'demo1' //数据库名称
})
connection.connect(); //开启数据库链接
// 数据库查询
connection.query('select * from user where userName = ? and password = ?',[userName,password],(err,resulte,fields)=>{
if(err) throw err;
if(resulte.length>0){ //查询的结果,如有查到一条,就说明有此人,登录成功
res.writeHead(200,{'Content-Type':'text/html;charset=utf8'})
res.write('登录成功')
console.log('登录成功!!!',);
}
res.end() //响应结束
})
connection.end() //关闭数据库链接
})
}
})
server.listen(8080) //监听端口号
5.在cmd使用命令 node service.js 运行就完成了
此时一个简易的登录接口就完成了