新增 affiliate_dash 发货平台客户端与签名(阶段 1)

- 平台配置接入:runtime-config/types/defaults/env-overrides/app-config-keys 增加 affiliateDash
- affiliate-dash 平台客户端:请求签名(§3.1 app_key+body_sha256)、回调验签(§3.2 timingSafeEqual)、
  http-client 封装(超时/错误归一/全链路日志)、订单/交付/钱包/商品接口封装
- 单测 12/12 + 全量 211 通过,真实联调拉取线上商品 33 个验证签名链路
- 新增 affiliate_dash 对接文档 v2(含契约验证结论与深度分析)
This commit is contained in:
yml2213
2026-08-05 14:51:40 +08:00
parent 784459232d
commit a6ba5f1c7f
15 changed files with 1725 additions and 0 deletions
@@ -8,4 +8,5 @@ export const APP_CONFIG_KEYS = {
cloudtentaclesOverrideRules: 'cloudtentacles_override_rules',
kuaishouFeifei: 'kuaishou_feifei',
kuaishouIndustrySource: 'kuaishou_industry_source',
affiliateDash: 'affiliate_dash',
} as const
+11
View File
@@ -75,6 +75,17 @@ export function createDefaultRuntimeConfig(projectRoot: string): RuntimeConfig {
notifyUrl: '',
productRules: [],
},
affiliateDash: {
enabled: true,
baseUrl: '',
appKey: '',
appSecret: '',
callbackSecret: '',
timeoutMs: 10000,
notifyUrl: '',
timestampToleranceSeconds: 300,
skuMapping: {},
},
cloudtentacles: {
baseUrl: 'https://123.207.217.176',
timeoutMs: 5000,
+11
View File
@@ -171,6 +171,17 @@ export const ENV_OVERRIDES: readonly EnvOverride[] = [
'kuaishouFeifei',
'productRules',
]),
stringEnv('AFFILIATE_DASH_BASE_URL', ['platforms', 'affiliateDash', 'baseUrl']),
stringEnv('AFFILIATE_DASH_APP_KEY', ['platforms', 'affiliateDash', 'appKey']),
stringEnv('AFFILIATE_DASH_APP_SECRET', ['platforms', 'affiliateDash', 'appSecret']),
stringEnv('AFFILIATE_DASH_CALLBACK_SECRET', ['platforms', 'affiliateDash', 'callbackSecret']),
integerEnv('AFFILIATE_DASH_TIMEOUT_MS', ['platforms', 'affiliateDash', 'timeoutMs']),
stringEnv('AFFILIATE_DASH_NOTIFY_URL', ['platforms', 'affiliateDash', 'notifyUrl']),
integerEnv('AFFILIATE_DASH_TIMESTAMP_TOLERANCE_SECONDS', [
'platforms',
'affiliateDash',
'timestampToleranceSeconds',
]),
corsOriginsEnv('CORS_ALLOWED_ORIGINS', ['cors', 'allowedOrigins']),
]