uni-app实现微信与支付宝的境外支付

写作背景。 uniapp作为国内一个跨平台开发的解决方案。在国内使用当然则得心应手。但是本人在做一个纽约那年的app公司采取了通过第三方对接微信和支付白支付。  具体能不能直接实现境外支付暂时有待探索。记录一下过程希望能帮到需要的人。 由于是一年前的项目。 故有些地方可能会出错。 希望各位看官指出来。 我来修改。 谢谢

第一步:需要开通支付宝和微信支付的权限。 对应地址。 支付宝开通地址 https://auth.alipay.com/login/index.htm  微信地址。https://pay.weixin.qq.com/index.php/core/home/login?return_url=%2F   至于微信在ios13上线之后对支付校验做了处理。故要求的选项要填上  

第二步: 如何将微信和支付宝介入uniapp.   我这里提供两种解决方式。 一种是通过集成原生插件即成。  这种方式只需要要求你按照文档即成就好。 原生插件有第三方平台或原生开发提供。 参考地址。 https://ask.dcloud.net.cn/article/35414https://ask.dcloud.net.cn/article/35416。  对于大多数而言没必要采取即成原生插件,另一种方法就是通过接口读取第三方平台的支付信息。 然后将支付信息传递给uniapp提供的函数

/**
 * 移动支付
 **/
_mobile_payment:function({payType,orderInfo}){
    uni.getProvider({
        service:'payment',// 获取原生支付配置列表
        success:(result) => {
            if (~ result.provider.indexOf('wxpay') && ~ result.provider.indexOf('alipay') ){
                uni.requestPayment({
                    provider: payType,
                    orderInfo: orderInfo, //微信、支付宝订单数据
                    success: function (res) {
                    },
                    fail: function (err) {
                    }
                });
            }
        },
        fail:() => {
        }
    })
},

说明  微信和支付宝的支付信息有所不同。 需要在提前处理。 以上只是关键代码。细节需要完善。

第三部。测试。这一步要自定义基座下进行。 在打包自定义基座之前为了能通过校验我们还需要准备最后一步。 在manifest.json找到ios选项。 配置p12 密钥以及其他附加选项。 关于ios的p12文件的密钥可以去苹果开发者中心拿的到。 安卓找到android 配置keystore,关于安卓的keystore稍微麻烦点。我们需要借助java sdk提供的keytool 工具读取。 

发布了5 篇原创文章 · 获赞 49 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_25502269/article/details/104799707