1、首先安装alipay-sdk,命令 npm i alipay-sdk
2、引入alipay-sdk,代码如下:
const AlipaySDK = require("alipay-sdk").default;
const AlipayFormData = require("alipay-sdk/lib/form").default;
3、创建AlipaySDK
const alipaySdk = new AlipaySDK({
appId: '', // 开放平台上创建应用时生成的 appId
signType: 'RSA2', // 签名算法,默认 RSA2
gateway: '', // 支付宝网关地址 ,沙箱环境下使用时需要修改
alipayPublicKey: '', // 支付宝公钥,需要对结果验签时候必填
privateKey: '', // 应用私钥字符串
});
4、创建一个AlipayFormData
const formData = new AlipayFormData();
formData.setMethod('get');
formData.addField('notifyUrl', 'https://www.baidu.com');
formData.addField('bizContent', {
outTradeNo: '15693801273221', // 商户订单号,64个字符以内、可包含字母、数字、下划线,且不能重复
productCode: 'FAST_INSTANT_TRADE_PAY', // 销售产品码,与支付宝签约的产品码名称,仅支持FAST_INSTANT_TRADE_PAY
totalAmount: '0.01', // 订单总金额,单位为元,精确到小数点后两位
subject: '商品', // 订单标题
body: '商品详情', // 订单描述
});
formData.addField('returnUrl', 'https://opendocs.alipay.com');
const result = await alipaySdk.exec( // result 为可以跳转到支付链接的 url
'alipay.trade.page.pay', // 统一收单下单并支付页面接口
{}, // api 请求的参数(包含“公共请求参数”和“业务参数”)
{ formData: formData },
);
补充:
1、选择沙箱调试网址
2、设置RSA2密钥
RSA2密钥的网址,自己要保存好应用私钥,在创建AlipaySDK需要使用到应用的私钥
重要:
遇到下面无法打开时,要自己要浏览器的所有页面关闭,再次访问该网址,可以打开支付沙箱的页面