微信支付集成工具是什么

技术微信支付集成工具是什么这篇文章将为大家详细讲解有关微信支付集成工具是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。微信支付集成工具最近老板又安排了新项目,要接入微

本文将详细讲解什么是微信支付集成工具。文章内容质量很高,我就分享给大家作为参考。希望大家看完这篇文章后对相关知识有一定的了解。

微信支付集成工具

最近老板安排了一个新项目接入微信支付。看了之前的支付码(很多年前别人写的),不忍直视,就去找微信官方sdk。因此,官方sdk不是“面向对象”的。由于经常使用阿里巴巴云,他决定用阿里巴巴云sdk的API风格写一个。

并通知线上项目下单和付款结果通过测试,其他完成的界面简单测试一两次全部通过。其他未完成的接口将逐步完成github : https://github.com/BekeyChao/wxpay/tree/master.

在OSCHINA上混合,带一个代码云仓库: https://gitee.com/BekeyChao/wxpay.

快速开始

cdyourpath

gitclonegitAddress

cdwxpay

Mvninstall将源代码克隆到本地,通过mvn安装到本地,并将其引入pom文件。

属国

groupIdxyz.bekey/groupId

artifactIdwxpay/artifactId

版本/版本

目前/dependency的最新版本是0.0.5,jdk的最低要求是1.8。java8在代码中没有被广泛使用。如果您想要兼容,您只需要在统一的单一接口中修改本地日期时间类型。

00-1010微信支付工具都是通过实例化微信支付类来使用的,为了方便,建议在Spring中注册为单实例。

@配置

publicclassWechatPayConfig{

@Value('${mch_id} ')

privateStringmch _ id

@Value('${key} ')

privateStringkey

@Value('${cert_path} ')

privateStringcert _ path//微信证书路径。

@豆

public微信公众号({ 0

//wxConfig提供两种构造方式,默认签名类型为MD5,默认微信支付服务地址取自官方文档。

WxpayConfigwxConfig=new wxpayconfig(微信应用程序。Yepaofu _ Subscribe.getAppid()

,mch_id,密钥,cert _ path);

//无需设置即可忽略自定义。

wxconfig . setconnecttimeou(10000);

wxconfig . setsockettimeout(10000);

returnnew微信公众号(wxConfig);

}

}以统一订购界面为例,调用方法。

@服务

公共类

nbsp;PayService {
    @Autowired
    private WechatPay wechatPay;
    // 统一下单接口
    public void toPay() {
        UnifiedOrderRequest request = new UnifiedOrderRequest();
        request.setTotal_fee(100);
        request.setSpbill_create_ip("10.10.10.10");
        request.setOut_trade_no("test123");
        request.setBody("测试订单");
        request.setTrade_type(TradeType.MWEB);
        request.setOpenid("openid");
        request.setNotify_url("http://mycallbak.com");
        // some else...
                
        UnifiedOrderResponse response = wechatPay.getWechatPayResponse(request);
        boolean success = response.isSuccess();
        if (success) {
            System.out.println(JSON.toJSONString(response)); 
        } else {
            System.out.println(response.getErr_code_des()); 
        }
    }
    // 支付结果回调,请从response中获取xml字符串
    public void handleCallback(String xml) { 
        try {
            UnifiedOrderCallback callback = wechatPay.unifiedorderCallback(xml);
            if (callback.isSuccess()) {
                System.out.println(JSON.toJSONString(callback));
            } else {
                System.out.println(callback.getErr_code_des());
            }
        } catch (InvalidSignException e) {
            // 处理签名异常
            e.printStackTrace();
        }        
    }
    
}

接口完成列表

已完成接口

  • 统一下单接口 UnifiedOrderRequest

  • 查询订单接口 OrderQueryRequest

  • 申请退款接口(需要证书) RefundRequest

  • 退款查询接口 RefundQueryRequest

  • 支付结果通知 UnifiedOrderCallback

未完成接口

  • 关闭订单

  • 海关申报

  • 下载对账单

  • 下载资金账单

  • 交易保障

  • 拉取订单评价数据

  • 退款结果通知(因为需要AES-256-ECB解密,jdk默认不支持,暂时不实现了)

代码风格

微信接口中会有大量的 javabean xml map 之间的转换,我处理的还是比较随意的,在xml -- javabean 之间主要通过fastjson进行转换,因为用起来比较顺手,所以也没在意效率的问题。 整体api风格设计借鉴 阿里云SDK 风格,xxxRequest 对应 xxxResponse,这种api设计很直观,而且通过一个api接口可以统一调用。 在参数校验层面,为了偷懒大量的校验与数据结构转换在Request中进行,所以Request类并不是简单类,在调试中可能会遇到点麻烦,见谅

关于微信支付集成工具是什么就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/37462.html

(0)

相关推荐

  • 肉末茄子怎么做好吃又简单,饭店肉末茄子是怎么做的

    技术肉末茄子怎么做好吃又简单,饭店肉末茄子是怎么做的材料茄子(紫皮肉末茄子怎么做好吃又简单,长的那种)2-3个,猪肉 1小块,食盐适量,贵太太茶油50g,蒜适量,白糖适量,鸡精少许,料酒适量,豆瓣酱1大匙,小葱适量,生抽

    生活 2021年10月21日
  • 如何解析Perl命令行程序用法

    技术如何解析Perl命令行程序用法如何解析Perl命令行程序用法,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Perl命令行程序命令行程序下面的几个Pe

    攻略 2021年11月12日
  • 本末倒置是什么意思,你做过什么本末倒置的事情

    技术本末倒置是什么意思,你做过什么本末倒置的事情【本末倒置 (成语) 】“本末倒置”是一个汉语成语本末倒置是什么意思;本:树根;末:树梢;置:放。意思是比喻把主要的和次要的、本质和非本质的关系弄颠倒了。出自《绥德州新学记

    生活 2021年10月19日
  • 学完Python可以做什么

    技术学完Python可以做什么这篇文章主要介绍“学完Python可以做什么”,在日常操作中,相信很多人在学完Python可以做什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”学完Pyth

    攻略 2021年11月23日
  • Linux中网络系统的示例分析

    技术Linux中网络系统的示例分析这篇文章主要介绍了Linux中网络系统的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。网络信息修改主机名# ho

    攻略 2021年12月10日
  • Jmeter(二十九)

    技术Jmeter(二十九) Jmeter(二十九) - 从入门到精通 - Jmeter Http协议录制脚本工具-Badboy2(详解教程)-------------------------------

    礼包 2021年12月1日