1. 程式人生 > >微信支付——沙箱秘鑰獲取

微信支付——沙箱秘鑰獲取

tsig return col ces san .com exception 需要 輸入

在做沙箱測試的時候,微信支付裏面的金額固定的,其他金額是無效的。需要按照文檔來輸入。

這裏需要用到沙箱秘鑰來替換簽名中的key,同樣驗簽的時候也是同樣用沙箱秘鑰獲取簽名,沙箱秘鑰的獲取方法

public static String GetSignKey() throws Exception {
        String nonce_str = WXPayUtil.generateNonceStr();//生成隨機字符
        Map<String, String> param = new HashMap<String, String>();
        param.put(
"mch_id", "自己的商戶號");//需要真實商戶號 param.put("nonce_str", nonce_str);//隨機字符 String sign = WXPayUtil.generateSignature(param,API_KEY,WXPayConstants.SignType.MD5);//通過SDK生成簽名其中API_KEY為商戶對應的真實密鑰 param.put("sign", sign); String xml = WXPayUtil.mapToXml(param);//將map轉換為xml格式 String url = "https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey";//
沙箱密鑰獲取api String SignKey = HttpUtil.postData(url, xml);// System.out.println("signkey+"+SignKey); Map<String, String> param1 = new HashMap<String, String>(); param1 = WXPayUtil.xmlToMap(SignKey); String key = param1.get("sandbox_signkey"); return
key; }

這裏的WXPayUtil是微信支付sdk中的工具類,在支付之前簽名和之後驗簽都要用到它

微信支付——沙箱秘鑰獲取