- Python (使用Flask)cztaihubay.com.cn
Flask 后端:
python
from flask import Flask, request, jsonify
app = Flask(name)
假设的商品数据
products = [
{“id”: 1, “name”: “Apple”, “price”: 1.00},
{“id”: 2, “name”: “Banana”, “price”: 0.50},
]
@app.route(‘/products’, methods=[‘GET’])
def get_products():
return jsonify(products)
@app.route(‘/products/int:product_id’, methods=[‘GET’])
def get_product(product_id):
product = next((p for p in products if p[‘id’] == product_id), None)
if product:
return jsonify(product)
else:
return jsonify({“error”: “Product not found”}), 404
if name == ‘main’:
app.run(debug=True)
注意:这只是一个非常基础的示例,实际项目中你可能需要处理数据库、用户认证、支付接口等。
- JavaScript (使用Node.js 和 Express)
Express 后端:
javascript
const express = require(‘express’);
const app = express();
const port = 3000;
// 假设的商品数据
const products = [
{ id: 1, name: ‘Apple’, price: 1.00 },
{ id: 2, name: ‘Banana’, price: 0.50 },
];
app.get(‘/products’, (req, res) => {
res.json(products);
});
app.get(‘/products/:id’, (req, res) => {
const product = products.find(p => p.id === parseInt(req.params.id));
if (product) {
res.json(product);
} else {
res.status(404).send(‘Product not found’);
}
});
app.listen(port, () => {
console.log(Server running on port ${port}
);
});
3. Java (使用Spring Boot)
Spring Boot 后端:
首先,你需要创建一个Spring Boot项目并添加必要的依赖(如Spring Web)。
ProductController.java:
java
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
@RestController
@RequestMapping(“/products”)
public class ProductController {
private static final List<Product> products = Arrays.asList(
new Product(1, "Apple", 1.00),
new Product(2, "Banana", 0.50)
);
@GetMapping
public List<Product> getAllProducts() {
return products;
}
@GetMapping("/{id}")
public Product getProductById(@PathVariable int id) {
return products.stream()
.filter(p -> p.getId() == id)
.findFirst()
.orElse(null);
}
// 假设的Product类
static class Product {
private int id;
private String name;
private double price;
// 构造函数、getter和setter省略
}
}
这些示例展示了如何在不同的后端框架中设置基本的路由和商品数据检索。实际项目中,你需要考虑更多的功能,如数据库集成、用户认证、购物车管理、订单处理等。前端部分可以使用React、Vue.js或Angular等现代JavaScript框架来构建。由于篇幅和复杂性的限制,我无法在这里提供一个完整的、多语言的购物商城代码实现。但是,我可以为你概述如何使用几种流行的编程语言(如Python(Flask或Django)、JavaScript(Node.js)、Java(Spring Boot))来构建购物商城的基本架构,并给出一些关键的代码片段。
- Python (使用Flask)
Flask 后端:
python
from flask import Flask, request, jsonify
app = Flask(name)
假设的商品数据
products = [
{“id”: 1, “name”: “Apple”, “price”: 1.00},
{“id”: 2, “name”: “Banana”, “price”: 0.50},
]
@app.route(‘/products’, methods=[‘GET’])
def get_products():
return jsonify(products)
@app.route(‘/products/int:product_id’, methods=[‘GET’])
def get_product(product_id):
product = next((p for p in products if p[‘id’] == product_id), None)
if product:
return jsonify(product)
else:
return jsonify({“error”: “Product not found”}), 404
if name == ‘main’:
app.run(debug=True)
注意:这只是一个非常基础的示例,实际项目中你可能需要处理数据库、用户认证、支付接口等。
- JavaScript (使用Node.js 和 Express)
Express 后端:
javascript
const express = require(‘express’);
const app = express();
const port = 3000;
// 假设的商品数据
const products = [
{ id: 1, name: ‘Apple’, price: 1.00 },
{ id: 2, name: ‘Banana’, price: 0.50 },
];
app.get(‘/products’, (req, res) => {
res.json(products);
});
app.get(‘/products/:id’, (req, res) => {
const product = products.find(p => p.id === parseInt(req.params.id));
if (product) {
res.json(product);
} else {
res.status(404).send(‘Product not found’);
}
});
app.listen(port, () => {
console.log(Server running on port ${port}
);
});
3. Java (使用Spring Boot)
Spring Boot 后端:
首先,你需要创建一个Spring Boot项目并添加必要的依赖(如Spring Web)。
ProductController.java:
java
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.List;
@RestController
@RequestMapping(“/products”)
public class ProductController {
private static final List<Product> products = Arrays.asList(
new Product(1, "Apple", 1.00),
new Product(2, "Banana", 0.50)
);
@GetMapping
public List<Product> getAllProducts() {
return products;
}
@GetMapping("/{id}")
public Product getProductById(@PathVariable int id) {
return products.stream()
.filter(p -> p.getId() == id)
.findFirst()
.orElse(null);
}
// 假设的Product类
static class Product {
private int id;
private String name;
private double price;
// 构造函数、getter和setter省略
}
}
这些示例展示了如何在不同的后端框架中设置基本的路由和商品数据检索。实际项目中,你需要考虑更多的功能,如数据库集成、用户认证、购物车管理、订单处理等。前端部分可以使用React、Vue.js或Angular等现代JavaScript框架来构建。