Python (Flask) 后端示例33066.cn
首先,我们使用Flask框架来创建一个简单的购物车REST API。
python
from flask import Flask, request, jsonify
app = Flask(name)
模拟数据库,存储商品和购物车信息
products = {
1: {‘name’: ‘Product 1’, ‘price’: 100},
2: {‘name’: ‘Product 2’, ‘price’: 200},
}
cart = {}
@app.route(‘/products’, methods=[‘GET’])
def get_products():
return jsonify(products)
@app.route(‘/cart’, methods=[‘GET’])
def get_cart():
return jsonify(cart)
@app.route(‘/cart/add’, methods=[‘POST’])
def add_to_cart():
product_id = request.json.get(‘product_id’)
quantity = request.json.get(‘quantity’, 1)
if product_id in products:
if product_id not in cart:
cart[product_id] = quantity
else:
cart[product_id] += quantity
return jsonify({‘message’: ‘Product added to cart’}), 201
else:
return jsonify({‘error’: ‘Product not found’}), 404
if name == ‘main’:
app.run(debug=True)
JavaScript (前端) 示例
这里我们使用JavaScript(通常与HTML和AJAX结合)来模拟与后端的交互。
HTML部分(仅用于展示按钮和结果):
html
<script src="script.js"></script>
JavaScript部分(script.js):
javascript
function addToCart(productId) {
fetch(‘/cart/add’, {
method: ‘POST’,
headers: {
‘Content-Type’: ‘application/json’,
},
body: JSON.stringify({product_id: productId, quantity: 1}),
})
.then(response => response.json())
.then(data => {
if (data.message) {
fetch(‘/cart’)
.then(response => response.json())
.then(cartData => {
document.getElementById(‘cartContent’).innerText = 'Cart: ’ + JSON.stringify(cartData);
});
} else {
console.error(data.error);
}
})
.catch((error) => {
console.error(‘Error:’, error);
});
}
注意:这只是一个非常基础的示例,用于演示购物车功能的基本概念。在实际应用中,你需要考虑更多的因素,如用户认证、数据库持久化、错误处理、前端用户界面设计等。此外,为了安全起见,你应该在生产环境中使用HTTPS,并妥善处理敏感数据。由于直接提供一个完整的购物商城代码在各种编程语言中是非常庞大和复杂的,我会为你提供一个简化的购物车功能示例,分别用Python(作为后端)和JavaScript(作为前端,通常与HTML和CSS结合使用)来实现。
Python (Flask) 后端示例
首先,我们使用Flask框架来创建一个简单的购物车REST API。
python
from flask import Flask, request, jsonify
app = Flask(name)
模拟数据库,存储商品和购物车信息
products = {
1: {‘name’: ‘Product 1’, ‘price’: 100},
2: {‘name’: ‘Product 2’, ‘price’: 200},
}
cart = {}
@app.route(‘/products’, methods=[‘GET’])
def get_products():
return jsonify(products)
@app.route(‘/cart’, methods=[‘GET’])
def get_cart():
return jsonify(cart)
@app.route(‘/cart/add’, methods=[‘POST’])
def add_to_cart():
product_id = request.json.get(‘product_id’)
quantity = request.json.get(‘quantity’, 1)
if product_id in products:
if product_id not in cart:
cart[product_id] = quantity
else:
cart[product_id] += quantity
return jsonify({‘message’: ‘Product added to cart’}), 201
else:
return jsonify({‘error’: ‘Product not found’}), 404
if name == ‘main’:
app.run(debug=True)
JavaScript (前端) 示例
这里我们使用JavaScript(通常与HTML和AJAX结合)来模拟与后端的交互。
HTML部分(仅用于展示按钮和结果):
html
<script src="script.js"></script>
JavaScript部分(script.js):
javascript
function addToCart(productId) {
fetch(‘/cart/add’, {
method: ‘POST’,
headers: {
‘Content-Type’: ‘application/json’,
},
body: JSON.stringify({product_id: productId, quantity: 1}),
})
.then(response => response.json())
.then(data => {
if (data.message) {
fetch(‘/cart’)
.then(response => response.json())
.then(cartData => {
document.getElementById(‘cartContent’).innerText = 'Cart: ’ + JSON.stringify(cartData);
});
} else {
console.error(data.error);
}
})
.catch((error) => {
console.error(‘Error:’, error);
});
}
注意:这只是一个非常基础的示例,用于演示购物车功能的基本概念。在实际应用中,你需要考虑更多的因素,如用户认证、数据库持久化、错误处理、前端用户界面设计等。此外,为了安全起见,你应该在生产环境中使用HTTPS,并妥善处理敏感数据。