如何使用node.js express mysql实现网站用户的注册登录功能
时间: 2024-01-02 17:18:08 浏览: 130
Node.js+Express+MySql实现用户登录注册功能
5星 · 资源好评率100%
以下是使用node.js express mysql实现网站用户的注册登录功能的步骤:
1. 安装Node.js和MySQL
2. 在MySQL中创建一个名为“user”的数据库,其中包含一个名为“users”的表,该表具有以下结构:
CREATE TABLE users (
id INT(11) NOT NULL AUTO_INCREMENT,
email VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
3. 使用npm安装express,mysql和body-parser模块:
npm install express mysql body-parser
4. 在Node.js应用程序中创建一个名为“app.js”的文件,并将以下代码添加到文件中:
const express = require('express');
const mysql = require('mysql');
const bodyParser = require('body-parser');
const app = express();
const db = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'user'
});
db.connect((err) => {
if (err) {
throw err;
}
console.log('Connected to database');
});
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.post('/register', (req, res) => {
const { email, password } = req.body;
db.query('SELECT * FROM users WHERE email = ?', [email], (err, results) => {
if (err) {
throw err;
}
if (results.length > 0) {
res.send('User already exists');
} else {
db.query('INSERT INTO users SET ?', { email, password }, (err) => {
if (err) {
throw err;
}
res.send('User registered');
});
}
});
});
app.post('/login', (req, res) => {
const { email, password } = req.body;
db.query('SELECT * FROM users WHERE email = ? AND password = ?', [email, password], (err, results) => {
if (err) {
throw err;
}
if (results.length > 0) {
res.send('Logged in');
} else {
res.send('Incorrect email or password');
}
});
});
app.listen(3000, () => {
console.log('Server started on port 3000');
});
5. 运行应用程序:
node app.js
6. 在浏览器中访问http://localhost:3000来测试注册和登录功能。
以上就是使用node.js express mysql实现网站用户的注册登录功能的步骤,希望对您有所帮助。
阅读全文