亚马逊.py 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import json
  2. from flask import Flask, jsonify, request
  3. from flask_cors import CORS
  4. app = Flask(__name__)
  5. CORS(app) # 允许跨域
  6. @app.route('/', methods=['GET', 'POST', 'PUT', 'DELETE', 'PATCH'])
  7. @app.route('/<path:path>', methods=['GET', 'POST', 'PUT', 'DELETE', 'PATCH'])
  8. def catch_all(path=''):
  9. print(f"路径: {path}")
  10. print(f"请求方法: {request.method}")
  11. # 获取 POST/PUT 请求的 body 数据
  12. if request.method in ['POST', 'PUT', 'PATCH']:
  13. # 如果是 JSON 格式
  14. if request.is_json:
  15. body_data = request.get_json()
  16. print(f"Body JSON: {body_data}")
  17. if (path == "homepage"):
  18. with open("./amazon/商品绩效.json", 'r', encoding='utf-8') as f:
  19. data = json.load(f)
  20. return jsonify(data)
  21. if (path == "business-reports"):
  22. operationName = body_data["operationName"]
  23. if (operationName == "salesDashboardDataQuery"):
  24. with open("./amazon/比较销售情况.json", 'r', encoding='utf-8') as f:
  25. data = json.load(f)
  26. return jsonify(data)
  27. if (operationName == "sellerMetadata"):
  28. with open("./amazon/sellerMetadata.json", 'r', encoding='utf-8') as f:
  29. data = json.load(f)
  30. return jsonify(data)
  31. if (operationName == "bannerQuery"):
  32. with open("./amazon/bannerQuery.json", 'r', encoding='utf-8') as f:
  33. data = json.load(f)
  34. return jsonify(data)
  35. else:
  36. # 如果是表单或其他格式
  37. body_data = request.get_data(as_text=True)
  38. print(f"Body 原始数据: {body_data}")
  39. if __name__ == '__main__':
  40. app.run(host='0.0.0.0', port=8000, debug=True)