Python (Flask)cy2.cn
python
from flask import Flask, request, jsonify
app = Flask(name)
products = [
{“id”: 1, “name”: “Product 1”, “price”: 100},
# … 其他产品
]
@app.route(‘/products’, methods=[‘GET’])
def get_products():
return jsonify(products)
@app.route(‘/products/int:product_id’, methods=[‘GET’])
def get_product(product_id):
for product in products:
if product[‘id’] == product_id:
return jsonify(product)
return jsonify({‘error’: ‘Product not found’}), 404
添加购物车、结算等逻辑会需要更复杂的逻辑和数据库支持
if name == ‘main’:
app.run(debug=True)
Java (Spring Boot)
这里仅提供接口和简单实现,实际项目中需要更多的配置和依赖。
java
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
@RestController
@RequestMapping(“/products”)
public class ProductController {
private List<Product> products = Arrays.asList(
new Product(1, "Product 1", 100),
// ... 其他产品
);
@GetMapping("")
public List<Product> getProducts() {
return products;
}
@GetMapping("/{productId}")
public Product getProduct(@PathVariable int productId) {
for (Product product : products) {
if (product.getId() == productId) {
return product;
}
}
return null; // 实际中应返回错误响应
}
// Product类和其他逻辑...
}
JavaScript (Node.js + Express)
javascript
const express = require(‘express’);
const app = express();
const products = [
{id: 1, name: ‘Product 1’, price: 100},
// … 其他产品
];
app.get(‘/products’, (req, res) => {
res.json(products);
});
app.get(‘/products/:productId’, (req, res) => {
const productId = parseInt(req.params.productId);
const product = products.find(p => p.id === productId);
if (product) {
res.json(product);
} else {
res.status(404).json({error: ‘Product not found’});
}
});
// 启动服务器等逻辑…
注意:这些示例仅展示了如何获取产品和产品详情。一个完整的购物商城还需要用户认证、购物车管理、订单处理、支付集成、库存管理等复杂功能,这些通常需要数据库支持(如MySQL、MongoDB等)和更复杂的后端逻辑。前端部分(如React、Vue、Angular等)将用于展示用户界面和与后端进行交互。由于直接在这里提供完整的购物商城代码超出了范围,并且会非常冗长,我将为您提供一个简单的购物商城的核心功能框架,分别用Python(使用Flask框架)、Java(使用Spring Boot框架)和JavaScript(使用Node.js和Express框架)来描述。
Python (Flask)
python
from flask import Flask, request, jsonify
app = Flask(name)
products = [
{“id”: 1, “name”: “Product 1”, “price”: 100},
# … 其他产品
]
@app.route(‘/products’, methods=[‘GET’])
def get_products():
return jsonify(products)
@app.route(‘/products/int:product_id’, methods=[‘GET’])
def get_product(product_id):
for product in products:
if product[‘id’] == product_id:
return jsonify(product)
return jsonify({‘error’: ‘Product not found’}), 404
添加购物车、结算等逻辑会需要更复杂的逻辑和数据库支持
if name == ‘main’:
app.run(debug=True)
Java (Spring Boot)
这里仅提供接口和简单实现,实际项目中需要更多的配置和依赖。
java
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
@RestController
@RequestMapping(“/products”)
public class ProductController {
private List<Product> products = Arrays.asList(
new Product(1, "Product 1", 100),
// ... 其他产品
);
@GetMapping("")
public List<Product> getProducts() {
return products;
}
@GetMapping("/{productId}")
public Product getProduct(@PathVariable int productId) {
for (Product product : products) {
if (product.getId() == productId) {
return product;
}
}
return null; // 实际中应返回错误响应
}
// Product类和其他逻辑...
}
JavaScript (Node.js + Express)
javascript
const express = require(‘express’);
const app = express();
const products = [
{id: 1, name: ‘Product 1’, price: 100},
// … 其他产品
];
app.get(‘/products’, (req, res) => {
res.json(products);
});
app.get(‘/products/:productId’, (req, res) => {
const productId = parseInt(req.params.productId);
const product = products.find(p => p.id === productId);
if (product) {
res.json(product);
} else {
res.status(404).json({error: ‘Product not found’});
}
});
// 启动服务器等逻辑…
注意:这些示例仅展示了如何获取产品和产品详情。一个完整的购物商城还需要用户认证、购物车管理、订单处理、支付集成、库存管理等复杂功能,这些通常需要数据库支持(如MySQL、MongoDB等)和更复杂的后端逻辑。前端部分(如React、Vue、Angular等)将用于展示用户界面和与后端进行交互。