资源简介
这是一份对于微信小程序支付sdk的二次封装,开箱即用,可以直接调用方法,微信原本的sdk仅仅是个demo架子,有任何使用疑问欢迎讨论!
代码片段和文件信息
package com.weixin.pay;
import com.weixin.pay.constants.WXPayConstants;
import com.weixin.pay.constants.WXPayConstants.SignType;
import com.weixin.pay.util.DateTimeUtil;
import com.weixin.pay.util.WXPayUtil;
import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
public class WXPay {
private WXPayConfig config;
private SignType signType;
private boolean autoReport;
private boolean useSandbox;
private String notifyUrl;
private WXPayRequest wxPayRequest;
public WXPay(final WXPayConfig config) throws Exception {
this(config null true false);
// this(config null true true);
}
public WXPay(final WXPayConfig config final boolean autoReport) throws Exception {
this(config null autoReport false);
// this(config null autoReport true);
}
public WXPay(final WXPayConfig config final boolean autoReport final boolean useSandbox) throws Exception {
this(config null autoReport useSandbox);
}
public WXPay(final WXPayConfig config final String notifyUrl) throws Exception {
this(config notifyUrl true false);
}
public WXPay(final WXPayConfig config final String notifyUrl final boolean autoReport) throws Exception {
this(config notifyUrl autoReport false);
}
public WXPay(final WXPayConfig config final String notifyUrl final boolean autoReport final boolean useSandbox) throws Exception {
this.config = config;
this.notifyUrl = notifyUrl;
this.autoReport = autoReport;
this.useSandbox = useSandbox;
if (useSandbox) {
this.signType = SignType.MD5; // 沙箱环境
} else {
this.signType = SignType.MD5; // 此处原来不是MD5!!!
}
this.wxPayRequest = new WXPayRequest(config);
}
private void checkWXPayConfig() throws Exception {
if (this.config == null) {
throw new Exception(“config is null“);
}
if (this.config.getAppID() == null || this.config.getAppID().trim().length() == 0) {
throw new Exception(“appid in config is empty“);
}
if (this.config.getMchID() == null || this.config.getMchID().trim().length() == 0) {
throw new Exception(“appid in config is empty“);
}
if (this.config.getCertStream() == null) {
throw new Exception(“cert stream in config is empty“);
}
if (this.config.getWXPayDomain() == null) {
throw new Exception(“config.getWXPayDomain() is null“);
}
if (this.config.getHttpConnectTimeoutMs() < 10) {
throw new Exception(“http connect timeout is too small“);
}
if (this.config.getHttpReadTimeoutMs() < 10) {
throw new Exception(“http read timeout is too small“);
}
}
/**
* 向 Map 中添加 appid、mch_id、nonce_str、sign_type、sign
* 该函数适
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
....... 278 2018-12-05 11:20 wxpay-sdk-master\.gitignore
....... 5256 2018-12-05 11:20 wxpay-sdk-master\pom.xm
....... 6692 2018-12-05 11:20 wxpay-sdk-master\README.md
....... 1514 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\card\CardBgColorEnum.java
....... 1363 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants\WXConstants.java
....... 640 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants\WXPayCodeEnum.java
文件 11630 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants\WXPayConstants.java
....... 5114 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants\WXURL.java
....... 1657 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\redis\RedisKeyEnum.java
....... 3201 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\redis\RedisKeyUtil.java
....... 4461 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\AESUtil.java
....... 5928 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\DateTimeUtil.java
文件 13023 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXPayUtil.java
文件 1634 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXPayxm
....... 6971 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXSignatureUtil.java
....... 948 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXUserUtil.java
....... 25954 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\util\WXUtils.java
文件 64346 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPay.java
文件 1974 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayConfig.java
文件 2114 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayConfigImpl.java
文件 1364 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayDomain.java
文件 3937 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayDomainSimpleImpl.java
文件 11232 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayReport.java
文件 10592 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\WXPayRequest.java
文件 2171 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\XxxWXPayConfigImpl.java
文件 12760 2018-12-05 11:20 wxpay-sdk-master\src\main\test\controller\TestWXPay.java
....... 3591 2018-12-05 11:20 wxpay-sdk-master\src\main\test\controller\WXAuthController.java
文件 15469 2018-12-05 11:20 wxpay-sdk-master\src\main\test\controller\WXPayController.java
目录 0 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\card
目录 0 2018-12-05 11:20 wxpay-sdk-master\src\main\java\com\weixin\pay\constants
............此处省略14个文件信息
- 上一篇:实战攻防之蓝队视角下的防御体系构建.docx
- 下一篇:ntko大文件上传
相关资源
- 用于Vuejs的一个可拖动和可调整大小的
- 基于VueElement的简单管理后台模板
- 微信小程序版论坛社区系统源代码分
- Vue20VuerouterElementUI实现的后台管理系统
- 一个可扩展可部署的QQ群机器人。
- 微信小程序-直播小程序
- 省钱兄微信小程序、h5版本淘宝客源码
- 微信小程序中常见的几种授权
- Spring相关的外文文献和翻译(毕设论
- 新一代django脚手架,支持微信登录、
- 海德汉DNC RemoTools SDK virtual TNC软件接口
- 微信小程序开发的音乐播放器wx_mymu
- 微信小程序webview组件交互内联h5页面
- 织梦小程序助手插件.zip
- 微信小程序 仿QQ
- 01 文件在WebRoot文件夹下的downFile文件
- xiaohui.zip介绍中草药的微信小程序
- 《微信小程序开发文档》使用指南
- 微信小程序源码-小商城高级版
- 微信小程序源码-机器人智能回复
- heatmap.js热图js
- FBX SDK安装配置
- js文本比对插件
- 深入理解Spring Cloud与微服务构建 方志
- 微信小程序rsa分段加密
- 微信JSSDK
- 判断用户是否在线和实时统计在线人
- 用MapReduce实现KMeans算法
- Microsoft Windows SDK v7.0
- 佳能SDK开发指导
评论
共有 条评论