前言:
上一篇文章介绍了企业微信转账,思量了下还是决定把微信支付相关的也介绍下,记录下自己的思路,希望能够帮到初次接触微信支付相关开发的朋友们,对于账号申请这块,本文不做介绍,另外博主主要涉及JAVA开发,因此本文着重介绍服务端的代码部分
步骤:
- 下载微信官网的SDK(需要适当的改造服务端代码,上篇文章已经有说明)
- 服务端生成APP端调用微信支付的JSON字符串(APP请求微信支付的所需参数)
- 原生安卓(IOS)通过服务端传递的JSON字符串发起微信支付
- 回调(需要微信商户平台设置回调接口授权,本文不介绍)
- 参数说明(trade_type=APP的必须传递开放平台的APPID并不是公众平台的APPID)
- 微信官网开发文档
第一步:前往微信官网下载SDK3.0.9(源码下载)
第二步:后端生成预支付JSON串(APP/JSAPI/NATIVE)
- 在自己的工程中创建一个继承WxPayConfig的类(前往上一篇文章)
- WeChatPayConfig.java(包含各种类型的支付)
package com.casom.pay.config;
import java.io.IOException;
import java.io.InputStream;
import org.springframework.core.io.ClassPathResource;
import com.github.wxpay.sdk.IWXPayDomain;
import com.github.wxpay.sdk.WXPayConfig;
/**
*
* @author F
*
*/
public class WeChatPayConfig extends WXPayConfig {
/**
* 微信支付回调地址
*/
public static final String NOTITY_URL = "";
/**
* 证书地址:resource下
*/
public static final String CERT_PATH = "/cert/apiclient_cert.p12";
/**
* pkcs8公钥
*/
public String RSA_PKCS8 = "/rsa/pkcs8.pem";
/**
* 填充算法
*/
public String FILLING_ALGORITHM = "RSA/ECB/OAEPWITHSHA-1ANDMGF1PADDING";
/**
* API密钥(商户平台-账户设置-API安全-密钥设置)
* 签名使用
*/
private String key = "";
/**
* 不同平台的APPID
*/
public static final class APPID{
/**
* 开放平台APPID
*/
public static final String OPEN_PLATFORM = "";
/