由于篇幅限制,以下仅展示如何使用Express框架搭建服装店网站的后端API服务器的核心代码。
const express = require('express');
const bodyParser = require('body-parser');
const mysql = require('mysql');
// 创建Express应用
const app = express();
// 连接数据库
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'your_password',
database: 'fashion_shop'
});
connection.connect();
// 使用body-parser中间件解析JSON和urlencoded数据
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
// 路由: 获取商品列表
app.get('/api/products', (req, res) => {
connection.query('SELECT * FROM products', (error, results) => {
if (error) throw error;
res.send(results);
});
});
// 路由: 获取特定商品信息
app.get('/api/product/:id', (req, res) => {
const id = req.params.id;
connection.query('SELECT * FROM products WHERE id = ?', [id], (error, results) => {
if (error) throw error;
res.send(results[0]);
});
});
// 路由: 添加商品评论
app.post('/api/product/comment', (req, res) => {
const comment = req.body.comment;
connection.query('INSERT INTO comments (product_id, comment) VALUES (?, ?)', [comment.productId, comment.text], (error, results) => {
if (error) throw error;
res.send('Comment added successfully.');
});
});
// 启动服务器
const PORT = 3000;
app.listen(PORT, () => {
console.log(`Server is running on port ${PORT}`);
});
以上代码展示了如何使用Express创建API端点来与MySQL数据库交互。代码中包含了获取商品列表、获取特定商品信息以及添加商品评论的例子。这些API端点可以被Vue.js前端应用用来获取数据或者发送数据到服务器。
请注意,为了保证安全性,您应该更改数据库连接的用户名、密码以及数据库名称,并且在生产环境中使用更安全的方式来存储敏感信息。同时,您还应该实现更多的错误处理和安全措施。