先看效果:

纯云开发实现,下面说使用步骤:一:开通商户的企业付款到领取功能说明地址:

https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_1

使用条件

1、商户号(或同主体其他非服务商商户号)已入驻90日

2、截止今日回推30天,商户号(或同主体其他非服务商商户号)连续不间断保持有交易

使用条件是第一难,第二难在下面这里

在网上找了很多,感觉是云开发这里的一个不完善地方,如果不填ip,会报这种错

{"errorCode":1,"errorMessage":"user code exception caught","stackTrace":"NO_AUTH"}

云开发没有ip这个概念,所以这里有些无从下手,希望后期云开发能有更好支付方案吧,不过这里我采用了个替代方案,参考了社区帖子:

https://developers.weixin.qq.com/community/develop/doc/00088cff3a40d87d80f7267b65b800

之后我也亲自验证了,基本上就是这几个,当然肯定不够,但是可以自己在逻辑上进行处理,ip以下:

172.81.207.12172.81.212.74172.81.236.99172.81.235.12172.81.245.51212.64.65.131212.64.84.22212.64.85.35212.64.85.139212.64.87.134

接着,可以动手了

二、云开发部分

1、设置云存储

证书配置地址:

下载后有三个文件,我们只需要p12结尾的那个

然后,将这个apiclient_cert.p12文件上传到你的云存储

这里处理完了,我们只需要一个东西,就是fileID也就是常说的云存储ID(上图红框内容)

2、配置云函数

新建云函数ref云函数

代码如下:

const config = {      appid: 'wx383426ad9ffe1111', //小程序Appid      envName: 'zf-shcud', // 小程序云开发环境ID      mchid: '1111111111', //商户号      partnerKey: '1111111111111111111111', //此处填服务商密钥      pfx: '', //证书初始化      fileID: 'cloud://zf-shcud.11111111111111111/apiclient_cert.p12' //证书云存储id};const cloud = require('wx-server-sdk')cloud.init({      env: config.envName})const db = cloud.database();const tenpay = require('tenpay'); //支付核心模块exports.main = async(event, context) => {//首先获取证书文件const res = await cloud.downloadFile({            fileID: config.fileID,      })      config.pfx = res.fileContentlet pay = new tenpay(config,true)let result = await pay.transfers({//这部分参数含义参考https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_2            partner_trade_no: 'bookreflect' + Date.now() + event.num,            openid: event.userinfo._openid,            check_name: 'NO_CHECK',            amount: parseInt(event.num) * 100,            desc: '二手书小程序提现',      });if (result.result_code == 'SUCCESS') {//如果提现成功后的操作//以下是进行余额计算let re=await db.collection('user').doc(event.userinfo._id).update({                  data: {                        parse: event.userinfo.parse - parseInt(event.num)                  }            });return re      }}

需安装的依赖:wx-server-sdk、tenpay

这里只是实现了简单原始的提现操作,关于提现后,比如防止重复提交,提现限额这些,在开源二手书商城上有完整流程,地址:

https://github.com/xuhuai66/used-book-pro

这种办法,不是每次都能成功提现,小概率遇到ip未在白名单情况,还是希望,云开发团队能尽快出一个更好的解决方案吧

小程序云开发搜索功能的实现正则_几行代码实现小程序云开发提现功能相关推荐

  1. 小程序云开发搜索功能的实现正则_码code | 如何借助小程序云开发实现小程序支付功能...

    转载来源:编程小石头 我们在做小程序支付相关的开发时,总会遇到这些难题.小程序调用微信支付时,必须要有自己的服务器,有自己的备案域名,有自己的后台开发.这就导致我们做小程序支付时的成本很大. 本节就来 ...

  2. 开发转测试没人要_入行或转行软件测试(测试开发)要怎么学

    在2008年刚刚进入这个行业时,我对于要学什么东西,是迷茫的.记得我在08年的时候,入职的公司给我们这批新人做了培训.培训中介绍了很多概念,告诉我们质量很重要,软件测试前景很好,还教了我们很多软件测试 ...

  3. 2行代码实现小程序分享到朋友圈功能

    期盼已久的小程序直接分享到朋友圈的功能,官方终于支持了.今天就来带大家实现小程序分享到朋友圈的功能.代码很简单. 老规矩,以图为证 新加分享到朋友圈的按钮 分享到朋友圈的效果 分享成功 打开朋友圈分享 ...

  4. 猜猜乐游戏php源码,C/C++百行代码实现热门游戏消消乐功能的示例代码

    游戏设计 首先我们需要使用第三方框架,这里我使用的是sfml,不会使用sfml在我的上几篇文章当中-扫雷(上)有详细的开发环境搭建介绍 首先准备图片资源 一张背景图片,一张宝石图片 窗口初始化加载图片 ...

  5. php消消乐代码,C/C++百行代码实现热门游戏消消乐功能的示例代码

    游戏设计 首先我们需要使用第三方框架,这里我使用的是sfml,不会使用sfml在我的上几篇文章当中-扫雷(上)有详细的开发环境搭建介绍 首先准备图片资源 一张背景图片,一张宝石图片 窗口初始化加载图片 ...

  6. 几行代码就搞定一个文字识别功能,同时还能转换成语音,畅快!

    前几天想把一篇不错的文章保存下来,无奈是图片的,于是想利用python把图片中的文字识别出来 实现的方式还是挺多的,这里介绍下百度的AI开放平台,毕竟大公司,感觉识别的精度会高点,同时相信他们的算法也 ...

  7. 基于第一行代码CoolWeather的小白天气开发

    小白天气开发练习 小白基于guolin大神第一行代码CoolWeather开发,最后附上github链接 文章目录 小白天气开发练习 数据来源 CoolWeather目录结构 用例图&时序图 ...

  8. java粒子特效_程序员20分钟搞定粒子效果, 仅仅200行代码

    原标题:程序员20分钟搞定粒子效果, 仅仅200行代码 这粒子的打造,确实没有布局代码,稍后大家在源码上可以看到,css代码都只有几行,绝大部分代码都是java代码,而且是原生java书写的,现在很多 ...

  9. 部分代码_(python openCV)用71行代码实现获取人脸部分并存储功能

    前言: 今天为大家带来的内容是,(python openCV)用71行代码实现获取人脸部分并存储功能!希望能够帮助到大家,代码较多,部分是用图片方式呈现出来,为了有更好的观赏性和收藏便利. 提示: 本 ...

最新文章

  1. TensorFlow文件操作
  2. MySQL查询不到中文的问题
  3. WCF跨域 这可能是由于试图以跨域方式访问服务而又没有正确的跨域策略,或策略不适用于 SOAP...
  4. 【Antlr】Antlr preview 不能使用了
  5. 机器视觉——计算视野的小工具
  6. php树形结构数组转化
  7. 怎么让百度收录站点的图片呢?
  8. bcm2837linux编程_树莓派gpio接口及编程方法
  9. 一个Java开发h5牌九棋牌网站开发细节
  10. linux c语言内核函数手册,Linux C函数实例速查手册
  11. excel中地理坐标经纬度格式调整:保留两位小数
  12. keepalived 虚拟网卡不出来?
  13. 《关于组织申报2017年度高新技术企业的通知》
  14. 狂刷《Java权威面试指南(阿里版)》,助你一臂之力,事半功倍
  15. 数组-数字组合II-中等
  16. Qt Designer设置背景以及背景图片
  17. lrtimelapse 5.2.1中文版 附安装教程
  18. 百度SEO花生壳动态域名解析软件 v5.3.0.34889
  19. 椭圆的周长与面积_来自一张老外的作业纸
  20. 小红书母婴博主怎么找商家?博主找商家的方法看这里

热门文章

  1. 字符串删除首尾_[LeetCode] 459. 重复的子字符串
  2. java txtreader_一个简单的Java读写文件例子
  3. 在python中 函数赋值给变量时,需要注意的几个事项
  4. Python中的运算符
  5. python 使用 requests 做 http 请求
  6. Python的collections之namedtuple的使用及其优势
  7. 日本计算机科学家谷歌评审,高一被清华姚班录取, 高三委拒谷歌offer, 一个重度网瘾少年到理论计算机科学家的蜕变...
  8. mysql replication health is not ok_MySQL的高可用——MHA
  9. ubuntu安装npm(npm install)时报错:run `npm audit fix` to fix them, or `npm audit` for details
  10. html div中的id和class