在微信支付官网下载的文档demo中 自己继承 WXPayConfig()类,.md文件中明显有漏洞。
1.注意 mode里用的是 implements 实现 但是 WXPayConfig()类是抽象的,我们要改成继承 extends。
2.在继承了WXPayConfig()类中药重写所有抽象的方法!其中微信的mode漏了 getWXPayDomain();方法的重写在这里我加上;
示例:
配置类MyConfig: ```java import ; import .*; public class MyConfig extends WXPayConfig{ private byte[] certData; public MyConfig() throws Exception { String certPath = "/path/to/apiclient_cert.p12"; File file = new File(certPath); InputStream certStream = new FileInputStream(file); = new byte[(int) ()]; (); (); } public String getAppID() { return "wx8888888888888888"; } public String getMchID() { return "12888888"; } public String getKey() { return "88888888888888888888888888888888"; } public InputStream getCertStream() { ByteArrayInputStream certBis = new ByteArrayInputStream(); return certBis; } public int getHttpConnectTimeoutMs() { return 8000; } public int getHttpReadTimeoutMs() { return 10000; } public IWXPayDomain getWXPayDomain() { // 这个方法需要这样实现, 否则无法正常初始化WXPay IWXPayDomain iwxPayDomain = new IWXPayDomain() { public void report(String domain, long elapsedTimeMillis, Exception ex) { } public DomainInfo getDomain(WXPayConfig config) { return new (WXPayConstants.DOMAIN_API, true); } }; return iwxPayDomain; } }