ReactNative支付宝支付问题

xiaoxiao2021-02-28  92

支付宝支付功能嘛。。。这东西就比较严重了。。。因为涉及到各种侵权,非法交易等问题,因此中间环节有一大堆,不仅复杂还难懂,各种加密手段。。。但是作为一个前端开发人员的我们有必要知道这些吗???有吗???知道了又不能上天。。。只能让你高大上的装个X,然并卵。。。

那么我们只要单纯的知道以下几步就OK了。。。

1、联网获取订单信息。。。也就是ajax了,我们RN中用fetch 换了个名,本质还是ajax

2、根据拿到的订单信息调用支付宝接口发起支付。。。(Android中的不同应用间互相调用)

3、输入支付宝密码开始支付。。。

4、返回支付成功还是支付失败。。。

没了。。。

那么怎么使用这个支付宝支付呢???

1、安装react-native-yunpeng-alipay 模块

切换到工程根目录下打开cmd 输入:npm install react-native-yunpeng-alipay --save

等待下载完成就好了。。。

2、引入该模块。。。

import Alipay from 'react-native-yunpeng-alipay'

3、我们根据上面的第二步知道Android端不同应用之间相互调用需要一些配置,配置也很简单:

1)、打开AndroidManifest.xml配置文件复制下面一句话进去,原则相同类型的代码放一起。。。下面这段代码就是一个activity标签,那么在这个文件下找到有activity标签的地方,跟他们放一块就好了。。。

<activity android:name="com.alipay.sdk.app.H5PayActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:screenOrientation="behind" > </activity> <activity android:name="com.alipay.sdk.auth.AuthActivity" android:configChanges="orientation|keyboardHidden|navigation" android:exported="false" android:screenOrientation="behind" > </activity>

2)、权利声明部分原则跟上面一致:

<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

4、配置文件也改好了,那么下面就是写代码了,代码也非常简单就一个方法而已。。。

pay(){

        //我们要根据支付宝要求的RSA验证机制,通过网络访问,跟服务器要一个符合该验证机制的支付订单

        fetch('我们服务器的地址')   //后台会告诉,我们不用理会

            .then((response) => response.json())

            .then((responseJson) => {

              //拿到json中的订单信息

               var payInfo= responseJson.xx.xxx.xxxxx

                //使用拿到支付订单,结合我们导入的代码发起支付

                Alipay.pay(payInfo).then(function(data){

                    console.log('支付成功');

                }, function (err) {

                    console.log('支付失败');

                });

            })

            .catch((error) => {

                console.error(error);

            });

}

 

想了解更多请查看下面俩网站:

https://www.npmjs.com/package/react-native-yunpeng-alipay

http://blog.csdn.net/u011413061/article/details/53183370

转载请注明原文地址: https://www.6miu.com/read-28031.html

最新回复(0)