帮我用node.js写一个从MySQL验证登录的接口
时间: 2023-05-27 10:07:10 浏览: 52
以下是一个简单的从MySQL验证登录的接口示例,使用Node.js和MySQL2库:
```
const mysql = require('mysql2');
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'password',
database: 'mydb'
});
connection.connect((err) => {
if (err) throw err;
console.log('Connected to MySQL database!');
});
app.post('/login', (req, res) => {
const { username, password } = req.body;
if (!username || !password) {
res.status(400).send('Username and password are required!');
return;
}
connection.query(
'SELECT * FROM users WHERE username = ? AND password = ?',
[username, password],
(err, results) => {
if (err) throw err;
if (results.length === 0) {
res.status(401).send('Invalid username or password!');
return;
}
res.status(200).send('Login successful!');
}
);
});
app.listen(3000, () => {
console.log('Server started on port 3000!');
});
```
这个接口监听POST请求到`/login`路由,接收一个包含`username`和`password`字段的JSON请求体。它首先检查这两个字段是否都存在,如果不存在则返回400错误。然后它在MySQL中查询是否有这个用户名和密码的用户,如果没有则返回401错误,否则返回200成功响应。注意,这只是一个基本的示例,实际应用中应该更加严谨和安全。