From b81065c9baf6d3b655bcceeb984323893b613afd Mon Sep 17 00:00:00 2001 From: iamzhaohaibo <941604465@qq.com> Date: Tue, 6 Jan 2026 11:58:08 +0000 Subject: [PATCH] upload README.md. Signed-off-by: iamzhaohaibo <941604465@qq.com> --- Spider/ecoDataServer/readme.md | 151 +++++++++++++++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 Spider/ecoDataServer/readme.md diff --git a/Spider/ecoDataServer/readme.md b/Spider/ecoDataServer/readme.md new file mode 100644 index 0000000..248c6b4 --- /dev/null +++ b/Spider/ecoDataServer/readme.md @@ -0,0 +1,151 @@ +# EcoData 数据接口文档 + +## 项目概述 + +EcoData 是一个基于数据查询系统,提供数据查询。 + +数据为测试生成数据,仅供测试。 + +## 基本URL + +`http://ecodata.lzgxy.cn` + +## 接口列表 + +### 1. 分页数据查询接口 + +- **接口地址**:`/query/PaginQuery/` +- **请求方式**:GET +- **认证方式**:密钥验证 + +#### 请求参数 + +| 参数名 | 类型 | 必填 | 说明 | +| ---------- | ------- | ---- | ------------------- | +| key | String | `是` | 访问密钥 | +| user_id | String | 否 | 用户ID | +| product_id | String | 否 | 产品ID | +| start_time | String | 否 | 开始时间(ISO格式) | +| end_time | String | 否 | 结束时间(ISO格式) | +| city | String | 否 | 用户所在城市 | +| gender | String | 否 | 用户性别 | +| age | Integer | 否 | 用户年龄 | +| platform | String | 否 | 购物平台 | +| offset | Integer | 否 | 起始索引,默认为0 | +| limit | Integer | 否 | 返回数量,默认为10 | + +#### 请求头 + +- 需要在URL参数中包含 `key` 参数,用于身份验证 + +#### 响应示例 + +```json +{ + "data": [ + { + "id": 1, + "user_id": "123456", + "order_id": "123456000001", + "user_name": "张三", + "product_id": "P001", + "product_name": "商品名称", + "product_category": "商品分类", + "unit_price": 99.99, + "purchase_time": "2023-01-01T10:00:00", + "quantity": 2, + "total_amount": 199.98, + "user_city": "北京", + "user_gender": "男", + "user_age": 25, + "shopping_platform": "淘宝" + } + ], + "pagination": { + "offset": 0, + "limit": 10, + "total": 100, + "has_more": true + } +} +``` + +#### 浏览器示例 + +![image-20260106195505299](/Users/zhaohaibo/Desktop/EcoDataServer/pics/image-20260106195505299.png) + +#### 响应参数说明 + +- `data`:数据列表 + - id:记录ID + - user_id:用户ID + - order_id:订单ID + - user_name:用户名 + - product_id:产品ID + - product_name:产品名称 + - product_category:产品分类 + - unit_price:单价 + - purchase_time:购买时间 + - quantity:数量 + - total_amount:总金额 + - user_city:用户城市 + - user_gender:用户性别 + - user_age:用户年龄 + - shopping_platform:购物平台 +- `pagination`:分页信息 + - offset:起始索引 + - limit:返回数量 + - total:总记录数 + - has_more:是否有更多数据 + +### 2. 密钥生成接口 + +- **接口地址**:`/get_signature/` +- **请求方式**:GET + +#### 请求参数 + +| 参数名 | 类型 | 必填 | 说明 | +| ------ | ------ | ---- | -------- | +| id | String | 是 | 学生学号 | +| name | String | 是 | 学生姓名 | + +#### 响应示例 + +```json +{ + "name": "张三", + "student_id": "20210001", + "ip": "192.168.1.1", + "request_key": "base64_encoded_key" +} +``` + +#### 浏览器示例 + +![image-20260106195132490](/Users/zhaohaibo/Desktop/EcoDataServer/pics/image-20260106195132490.png) + +#### 响应参数说明 + +- name:学生姓名 +- student_id:学生学号 +- ip:当前IP地址 +- request_key:生成的请求密钥 + +## 验证机制 + +### 密钥验证流程 + +1. **密钥生成**: + - 通过 `/get_signature/` 接口获取密钥 + - 密钥有效期为5分钟 + +2. **密钥验证**: + - 在请求 `/query/PaginQuery/` 时需要在URL参数中添加 `key` 参数 + +## 异常处理 + +- `400`: 缺少密钥参数 +- `401`: 密钥解析失败或已过期 +- `403`: IP地址不匹配 +- `404`: 学生信息不存在或未找到