調用微信支付 API 時提示「簽名失敗,APP_KEY 找不到」,通常伴隨截圖顯示錯誤碼或回調失敗。
appid、mch_id、nonce_str、sign 等。key=商戶Key 做 MD5/HMAC-SHA256。// 正確讀取 Key
String apiKey = config.getProperty("wechat.pay.apiKey"); // 從配置文件讀取
// 簽名生成
Map<String, String> params = new TreeMap<>(); // 自動按鍵排序
params.put("appid", appId);
params.put("mch_id", mchId);
// ... 其他參數
String sign = WXPayUtil.generateSignature(params, apiKey); // SDK 內部實現
params.put("sign", sign);
「APP_KEY 找不到」本質是簽名驗證失敗,核心在於商戶 Key 配置缺失或參數構造錯誤。按上述清單逐項排查即可定位。