uniCloud接入支付宝开发平台SDK

uniCloud是基于node为运行环境的,因此得接入node版的SDK,须要安装npm包,因为npm包大小超过10M,目前为止,只有腾讯云环境才能知足需求。node

这是支付宝开发平台SDK的npm资源地址,有安装和使用文档,能够前往了解shell

https://www.npmjs.com/package/alipay-sdknpm

安装json

云函数能够·使用npm安装第三方依赖,因此从云函数里面下手app

在你所须要的云函数目录下打开终端async

 

 

 初始化npm工程(在云函数目录下初始化,若是已经有package.json文件了,可跳过)ide

npm init -y

安装依赖(在云函数目录下安装依赖)函数

npm install alipay-sdk --save

密钥生成(本人选择的是证书模式,此步操做看实际开发情状)工具

须要资料测试

一、应用私钥证书:用工具生成的密钥(非JAVA格式,RSA2签名类型),而后复制本身生成一个pem格式文件)

二、应用公钥证书

三、支付宝公钥证书

四、支付宝根证书

这四份文件可前往https://opendocs.alipay.com/open/291/105971了解操做

注意:应用私钥转换pem格式文件时,要注意字符串格式,千万不要用txt格式,直接重命名pem格式相似的思路。否则的话,使用时会报0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag错误,可用openSSL工具生成pem文件,操做文档https://opensupport.alipay.com/support/helpcenter/207/201602520381?ant_source=antsupport,或者其它方式生成也行,不局限的

拿到上面的文件后,将这些文件直接放到云函数目录下

使用

//云函数暂时不支持import写法,只能用require导入
const AlipaySdk = require('alipay-sdk').default;

//node内置的模块
const fs = require('fs');
const path = require('path');

exports.main = async (event, context) => {
    
    const alipaySdk = new AlipaySdk({
          appId: 'xxx',
          signType: 'RSA2',
          privateKey: fs.readFileSync('./ssl.pem','UTF-8'),//我建的格式是UTF-8,实际填写看实际开发情状
          alipayRootCertPath: path.join(__dirname,'./alipayRootCert.crt'),
          appCertPath: path.join(__dirname,'./appCertPublicKey.crt'),
          alipayPublicCertPath: path.join(__dirname,'./alipayCertPublicKey_RSA2.crt')
    });

    return alipaySdk;
}

直接上传云函数并运行测试一下,若是出现如下信息,说明SDK导入成功,而且可使用了

 

 若是你想要更多的运用此SDK,能够移步其它文档https://www.yuque.com/chenqiu/alipay-node-sdk/guide

相关文章
相关标签/搜索