在前端开发中,支付功能是不可缺少的一部分。而阿里巴巴的支付宝也是国内领先的第三方支付平台。本文将介绍一个npm包——alipay-nodejs,使用该包可以方便地集成支付宝支付功能到你的NodeJS项目中。
安装
使用npm命令安装alipay-nodejs:
npm install alipay-nodejs --save
使用
在使用前需要先获取到支付宝开放平台的相关信息,包括AppId、PrivateKey、PublicKey等。以沙箱环境为例,可以在开放平台中心创建一个应用,然后获取到这些信息。
初始化
在项目中引入alipay-nodejs并使用相应信息初始化该包:
-- -------------------- ---- ------- ----- ------ - ------------------------- ----- ------ - --- -------- ------ ------- ----------- ------- ---------- -------- ---------- --------- -------- ---- -- ------ ---
统一收单下单并支付页面接口
在前端点击支付按钮后,首先需要调用该接口生成一个支付页面,用户可以在该页面完成支付。
-- -------------------- ---- ------- ----- -------- - ----- ---------------------- ----------- ------ ------------ ------------------------- ------------ ------- -------- ------ --- -- ------------------ ------------------------ - --------- -------- ---
以上代码将生产一个支付页面字符串orderStr,交给前端页面渲染。前端通过form表单提交该字符串即可跳转到支付宝页面完成支付。
异步通知处理
支付完成后,支付宝服务器会向notifyUrl通过post请求异步通知支付结果。需要在该url中处理通知,并返回success或failure表示处理结果。下面是该部分的代码:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ----------------- ---------------------- ----- ----- ---- -- - -- -------------------------------- ----- ------ - ---------------------------------- -- --------------------- ----- ------ - ---------------------- -- -------- - -- ----- ------------------------- -------------------- - ---- - -------------------- - ---
同步返回页面处理
在用户完成支付后,可以通过returnUrl回调函数返回到商户网站。下面是该部分的代码:
-- -------------------- ---- ------- --------------------- ----- ----- ---- -- - ----- ----- - ---------- -- --------------------- ----- ------ - --------------------- -- -------- - -- ----- ------------------------- ----------------------------------------------- - ---- - ----------------------------------------------- - ---
示例代码
完整示例代码如下:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ----------------- ----- ------ - ------------------------- ----- ------ - --- -------- ------ ------- ----------- ------- ---------- -------- ---------- --------- -------- ---- --- ---------------------- ----- ----- ---- -- - ----- - ----------- ------------ ------- - - --------- ----- -------- - ----- ---------------------- ----------- ----------- ------------ ------------------------- ------------ ------------ -------- ------- --- -- ------------------ ------------------------ - --------- -------- --- --- ---------------------- ----- ----- ---- -- - ----- ------ - ---------------------------------- ----- ------ - ---------------------- -- -------- - -- ----- ------------------------- -------------------- - ---- - -------------------- - --- --------------------- ----- ----- ---- -- - ----- ----- - ---------- ----- ------ - --------------------- -- -------- - -- ----- ------------------------- ----------------------------------------------- - ---- - ----------------------------------------------- - --- -------------- - -------
总结
本文介绍了npm包alipay-nodejs的使用方法,主要包括初始化、生成支付页面、异步通知处理、同步返回页面处理等。该包使用方便,具有深度,可以方便地集成支付宝支付功能到你的NodeJS项目中。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005596381e8991b448d6db1