- Python (Flask 后端)haoqian168.com
python
from flask import Flask, request, jsonify
app = Flask(name)
cart = {}
@app.route(‘/add_to_cart’, methods=[‘POST’])
def add_to_cart():
data = request.get_json()
product_id = data[‘product_id’]
quantity = data[‘quantity’]
if product_id not in cart:
cart[product_id] = quantity
else:
cart[product_id] += quantity
return jsonify({‘message’: ‘Product added to cart’, ‘cart’: cart})
if name == ‘main’:
app.run(debug=True)
2. JavaScript (Node.js + Express 后端)
javascript
const express = require(‘express’);
const app = express();
app.use(express.json());
let cart = {};
app.post(‘/add_to_cart’, (req, res) => {
const { product_id, quantity } = req.body;
if (!cart[product_id]) {
cart[product_id] = quantity;
} else {
cart[product_id] += quantity;
}
res.json({ message: ‘Product added to cart’, cart });
});
app.listen(3000, () => console.log(‘Server running on port 3000’));
3. Java (Spring Boot 后端)
这里只展示Controller部分:
java
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.Map;
@RestController
@RequestMapping(“/api”)
public class CartController {
private Map<String, Integer> cart = new HashMap<>();
@PostMapping("/add_to_cart")
public Map<String, Object> addToCart(@RequestBody Map<String, Integer> productData) {
String productId = productData.get("product_id");
int quantity = productData.get("quantity");
cart.put(productId, cart.getOrDefault(productId, 0) + quantity);
Map<String, Object> response = new HashMap<>();
response.put("message", "Product added to cart");
response.put("cart", cart);
return response;
}
}
4. 前端 (HTML + JavaScript)
这里只展示一个简化的AJAX请求示例(使用jQuery):
html
<script>
function addToCart() {
$.ajax({
url: '/api/add_to_cart',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({product_id: '123', quantity: 1}),
success: function(response) {
console.log(response);
},
error: function(error) {
console.error(error);
}
});
}
</script>
请注意,这些示例非常简化,并且没有涉及数据库、用户认证、错误处理、前端UI等关键部分。在实际项目中,你需要考虑这些因素,并可能需要使用更复杂的框架和库。由于生成一个完整的购物商城代码涉及到多个方面(如前端、后端、数据库等),并且每个语言都有其独特的实现方式,这里我将为你提供一个非常简化的示例,展示如何在几种不同的编程语言中创建一个基本的“添加商品到购物车”的逻辑。
- Python (Flask 后端)
python
from flask import Flask, request, jsonify
app = Flask(name)
cart = {}
@app.route(‘/add_to_cart’, methods=[‘POST’])
def add_to_cart():
data = request.get_json()
product_id = data[‘product_id’]
quantity = data[‘quantity’]
if product_id not in cart:
cart[product_id] = quantity
else:
cart[product_id] += quantity
return jsonify({‘message’: ‘Product added to cart’, ‘cart’: cart})
if name == ‘main’:
app.run(debug=True)
2. JavaScript (Node.js + Express 后端)
javascript
const express = require(‘express’);
const app = express();
app.use(express.json());
let cart = {};
app.post(‘/add_to_cart’, (req, res) => {
const { product_id, quantity } = req.body;
if (!cart[product_id]) {
cart[product_id] = quantity;
} else {
cart[product_id] += quantity;
}
res.json({ message: ‘Product added to cart’, cart });
});
app.listen(3000, () => console.log(‘Server running on port 3000’));
3. Java (Spring Boot 后端)
这里只展示Controller部分:
java
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.Map;
@RestController
@RequestMapping(“/api”)
public class CartController {
private Map<String, Integer> cart = new HashMap<>();
@PostMapping("/add_to_cart")
public Map<String, Object> addToCart(@RequestBody Map<String, Integer> productData) {
String productId = productData.get("product_id");
int quantity = productData.get("quantity");
cart.put(productId, cart.getOrDefault(productId, 0) + quantity);
Map<String, Object> response = new HashMap<>();
response.put("message", "Product added to cart");
response.put("cart", cart);
return response;
}
}
4. 前端 (HTML + JavaScript)
这里只展示一个简化的AJAX请求示例(使用jQuery):
html
<script>
function addToCart() {
$.ajax({
url: '/api/add_to_cart',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({product_id: '123', quantity: 1}),
success: function(response) {
console.log(response);
},
error: function(error) {
console.error(error);
}
});
}
</script>
请注意,这些示例非常简化,并且没有涉及数据库、用户认证、错误处理、前端UI等关键部分。在实际项目中,你需要考虑这些因素,并可能需要使用更复杂的框架和库。