支付宝支付时注意事项:
①:支付宝支付时
生成客户端实例时,用到的应用的公钥,私钥,
/** * 双重锁单例 * @return 支付宝请求客户端实例 */ public static AlipayClient getInstance(){ if (alipayClient == null){ synchronized (AlipayConfig.class){ if (alipayClient == null){ alipayClient = new DefaultAlipayClient(GATEWAY,APP_ID,APP_PRIVATE_KEY,PARAM_TYPE,CHARSET,ALIPAY_PUBLIC_KEY,SIGNTYPE); } } } return alipayClient; }
②:在验证回调参数时 用到的是支付宝公钥
/** * 校验是否支付成功 * @param handleParams * @return */ public static boolean rsaCheck(Map<String, String> handleParams) { boolean checkV1 = false; try { checkV1 = AlipaySignature.rsaCheckV1(handleParams, AlipayForOrderMealConfig.ALIPAY_KEY, AlipayForOrderMealConfig.CHARSET, AlipayForOrderMealConfig.SIGNTYPE); } catch (AlipayApiException e) { e.printStackTrace(); } return checkV1; }
微信支付注意事项:
①:支付生成的sign:
再生成sign字符串时,最后加的key为商户密钥,而不是微信的 APP_SECRET