微信支付集成工具是什么

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

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

微信支付集成工具

最近老板安排了一个新项目接入微信支付。看了之前的支付码(很多年前别人写的),不忍直视,就去找微信官方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)

相关推荐

  • 正气宝的功效与作用,麻黄的功效是什么,有什么禁忌

    技术正气宝的功效与作用,麻黄的功效是什么,有什么禁忌麻黄为麻黄科植物草麻黄正气宝的功效与作用、中麻黄或木贼麻黄的干燥草质茎,属于发散风寒药。麻黄主要含麻黄碱、伪麻黄碱、去甲基麻黄碱、去甲基伪麻黄碱、甲基麻黄碱、甲基伪麻黄

    生活 2021年10月27日
  • MySQL如何进行密码管理

    技术MySQL如何进行密码管理这篇文章主要介绍了MySQL如何进行密码管理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. mysql安装后默认没有密码

    攻略 2021年11月2日
  • 抖音刷人气,网页版抖音刷人气平台?

    技术抖音刷人气,网页版抖音刷人气平台?代刷平台点击网址即可直接进入,这是国内首家支持人工刷抖音粉丝、抖音双击、抖音播放量、抖音上热门的网站,有兴趣的就来试试吧!小编我的收听量都是在这刷的,安全、靠谱、价格也便宜!强烈推荐

    测评 2021年11月11日
  • 毫不犹豫英语,英语单词confront的用法

    技术毫不犹豫英语,英语单词confront的用法confront用于动词毫不犹豫英语。confront是及物动词。confront过去时:confronted,confront第三人称:confronts。动词随着人称、

    生活 2021年10月21日
  • 常见Redis面试题有哪些

    技术常见Redis面试题有哪些本篇内容主要讲解“常见Redis面试题有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“常见Redis面试题有哪些”吧!1、Redis支持的数

    攻略 2021年11月12日
  • MySQL 5.7如何使用GTID方式搭建复制环境

    技术MySQL 5.7如何使用GTID方式搭建复制环境这篇文章主要为大家展示了“MySQL 5.7如何使用GTID方式搭建复制环境”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下

    攻略 2021年11月3日