一、接口概述
义乌购平台提供标准的RESTful API接口,商品详情接口主要用于获取商品基础信息、SKU数据、价格库存等核心字段。该接口采用HTTPS协议,返回JSON格式数据。 二、接口参数说明 基础参数
app_key : 开发者密钥(必填)
method : 接口方法名(固定值:yiwugo.item.get)
timestamp : 请求时间戳(精确到秒)
sign : 请求签名(MD5加密)
业务参数
params = {
'item_id': '商品ID', # 必填项
'lang': 'zh_CN', # 语言选项
'fields': 'title,price,sku_specs' # 返回字段过滤
}
三、签名生成算法
import hashlib
import time
def generate_sign(secret, params):
param_str = '&'.join([f'{k}={v}' for k,v in sorted(params.items())])
sign_str = f"{secret}{param_str}{secret}"
return hashlib.md5(sign_str.encode()).hexdigest().upper()
四、完整请求示例
import requests
def get_item_detail(item_id):
base_url = "https://api.yiwugo.com/router/rest"
app_secret = "YOUR_SECRET_KEY"
params = {
'app_key': 'YOUR_APP_KEY',
'method': 'yiwugo.item.get',
'timestamp': str(int(time.time())),
'item_id': item_id,
'format': 'json'
}
params['sign'] = generate_sign(app_secret, params)
try:
response = requests.get(base_url, params=params)
return response.json()
except Exception as e:
print(f"API请求异常: {str(e)}")
return None
五、响应数据结构
成功响应示例:
{
"code": 200,
"data": {
"item_id": "123456",
"title": "义乌小商品示例",
"price": "9.90",
"sku_specs": [
{
"spec_id": "1",
"spec_name": "颜色",
"spec_values": ["红色","蓝色"]
}
]
}
}
六、错误处理
40001: 签名验证失败
40002: 参数缺失
50001: 商品不存在
建议实现自动重试机制和日志记录
七、最佳实践
使用连接池管理HTTP请求
对高频访问商品实施本地缓存
设置合理的超时时间(建议3秒)
监控接口成功率指标