Files
douba_shop/聚水潭测试指南.md
Karlcarlo c7f85ffbda feat: 添加阿里云短信服务支持并优化验证码逻辑
- 引入 alibabacloud/dysmsapi-20170525 依赖,集成阿里云短信服务
- 将短信验证码从6位改为4位,优化用户体验
- 添加聚水潭商品按时间范围同步功能,支持分页拉取
- 增强Cron任务异常处理,添加错误日志记录
- 修复系统附件服务中图片路径处理逻辑
- 更新阿里云SDK相关组件至最新版本
- 添加think-trace调试扩展,便于问题排查
- 优化跨域中间件,使用str_contains替代strpos
2026-04-30 15:19:40 +08:00

2.9 KiB
Raw Blame History

聚水潭商品拉取测试总结

✅ 测试结果

1. Token问题已解决

  • 原因: HaichaoBridge需要runtime/jstdata/jst_token_data.json文件
  • 解决方案: 运行php init_jst_token.php
  • 状态: ✅ 已解决

2. API接口调用成功

  • Token验证: ✅ 通过
  • API连接: ✅ 成功
  • 数据拉取: ⚠️ 返回空(见下文说明)

3. 数据为空的原因

getProductListStand()方法使用时间过滤:

// 只查询10天前到3天前修改过的商品
$time = 10;
'modified_begin' => 10天前
'modified_end' => 3天前

可能原因:

  1. 聚水潭系统中没有商品在指定时间范围内修改过
  2. 商品最近没有更新
  3. 时间范围需要调整

📋 可用测试脚本

1. init_jst_token.php

初始化Token文件(已运行)

php init_jst_token.php

2. test_haichao.php

测试HaichaoJstServices

# 获取示例数据
php test_haichao.php

# 查询指定SPU
php test_haichao.php 4651127369

3. test_haichao_all.php

全量拉取测试

php test_haichao_all.php

4. test_jst_final_demo.php

完整展示脚本

php test_jst_final_demo.php

🔧 建议操作

如果需要拉取所有商品

可以修改HaichaoJstServices.php中的时间范围:

文件: /home/jone/workspace/CRMEB_PRO/app/haichao/HaichaoJstServices.php

位置: 第655-667行

public function getProductListStand(): array
{
    $time = 10;  // 修改为更大的值,如 365(一年)
    $data = $this->post('open/mall/item/query', [
        'modified_begin' => date('Y-m-d H:i', (time() - (86400 * $time))),
        'modified_end' => date('Y-m-d H:i', time() - (86400 * $time) + 7 * 86400),
        'i_ids' => [],
        'page_index' => 1,
        'page_size' => 50,
        'date_field' => '',
    ])['data'];
    return $data;
}

或者直接查询指定SPU

php test_haichao.php 4651127369
php test_haichao.php 5606676507
php test_haichao.php 5633479406

📊 数据结构说明

成功返回的JSON格式:

{
    "i_id": "4651127369",
    "name": "贝肽斯夏季儿童防晒帽...",
    "s_price": "35.9",
    "market_price": null,
    "c_price": null,
    "pic": "https://img.yzcdn.cn/...",
    "skus": [
        {
            "sku_id": "1N55001102",
            "properties_value": "卡其布黄;M码:头围50-54cm",
            "sale_price": "35.9",
            "market_price": null,
            "cost_price": null
        }
    ]
}

⚠️ 注意事项

  1. Token有效期: 30天(2592000秒)
  2. 无RefreshToken: 无法自动刷新,需要手动更新
  3. API权限: 部分接口可能需要额外申请权限

📝 下一步建议

  1. 如果有具体要测试的SPU,请提供
  2. 如果需要拉取全部商品,可以修改时间范围
  3. 建议配置RefreshToken以支持自动续期