当前位置: 首页 > 后端技术 > Node.js

Electron-vue开发的客户端收付工具

时间:2023-04-03 10:39:19 Node.js

实现了支付宝刷脸支付的扫码支付功能和二维码支付功能,即主动扫描和被动扫描。.请使用支付宝沙盒环境进行测试,支付宝为沙盒版本。最终效果如下:前端页面使用阿里组件,ant-design-vue使用node,本地数据存储使用nedb内存数据库。安装文件支持自定义。生成的exe,安装过程如下程序代码简介main.jsimportdevtoolsfrom'@vue/devtools'importVuefrom'vue'importaxiosfrom'axios'importAppfrom'./App'importrouterfrom'./router'importstorefrom'./store'importdbfrom'./nedb'//orderformimportAntdfrom'ant-design-vue'import'ant-design-vue/dist/antd.css'importalipayhelperfrom'./alipayhelper'importmomentfrom'moment'//导入文件Vue.prototype.$moment=moment;//赋值使用Vue.prototype.$db=dbVue.prototype.alipayhelper=alipayhelper;Vue.use(Antd)if(!process.env.IS_WEB)Vue.use(require('vue-electron'))Vue.http=Vue.prototype.$http=axiosVue.config.productionTip=false/*eslint-disableno-new*/newVue({components:{App},router,store,template:''}).$mount('#app')支付宝收款人的APPID存储在alipayhelper.js中,applicationprivatepem路径下的密钥。这个信息可以通过阿里官方申请,也就是可以在线收钱constpath=require('path');constfs=require('fs');constmoment=require('moment');constcrypto=require('crypto');constelectron=require('electron');constdataPath=(electron.app||electron.remote.app).getPath('userData');consthome=(electron.app||electron.remote.app).getPath('home');constappData=(electron.app||electron.remote.app).getPath('appData');letALI_PAY_SETTINGS={APP_ID:'2016100100638328',APP_GATEWAY_URL:'http://localhost',//用于接收支付宝异步通知AUTH_REDIRECT_URL:'xxxxxxx',//第三方授权或用户信息授权后的回调地址。授权链接中配置的redirect_uri的值必须与该值一致。//__dirname获取当前目录,生产模式无法获取路径assr/*APP_PRIVATE_KEY_PATH:path.join(__dirname,'pem','rsa_private_key.pem'),//应用私钥APP_PUBLIC_KEY_PATH:path.join(__dirname,'pem','rsa_public_key.pem'),//应用公钥ALI_PUBLIC_KEY_PATH:path.join(__dirname,'pem','ali_rsa_public_key.pem'),//阿里公钥*/APP_PRIVATE_KEY_PATH:path.join(__static,'/pem/rsa_private_key.pem'),//应用私钥APP_PUBLIC_KEY_PATH:path.join(__static,'/pem/rsa_public_key.pem'),//应用公钥ALI_PUBLIC_KEY_PATH:path.join(__static,'/pem/ali_rsa_public_key.pem'),//阿里公钥AES_PATH:path.join(__dirname,'pem','remind','sandbox','aes.txt'),//aes加密(暂未使用)ALI_GATEWAY_URL:'https://openapi.alipaydev.com/gateway.do?',//用于接收支付宝异步通知};