//确认下单order() {let that = this;//获取10位时间戳var timestamp = Date.parse(new Date()) / 1000;//获取16位随机字符串function randomString(length, chars) {var result = '';for (var i = length; i > 0; --i) result += chars[Math.floor(Math.random() * chars.length)];return result;}var rString = randomString(16, 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678');//****默认去掉了容易混淆的var newrandom = "commoditiesCount=" + this.num + "&wechatOpenId=" + this.OpenID + "&nonceStr=" + rString + "&timestamp=" + timestamp;var s1 = Array.prototype.sort.call(newrandom.split("&"), function (a, b) {for (var i = 0; i < a.length; i++) {if (a.charCodeAt(i) == b.charCodeAt(i)) continue;return a.charCodeAt(i) - b.charCodeAt(i);}}).join("&") + "&key=xDWREv7heN35wPL0hM1joIjOoqzPUd8s";var postData = {nonceStr: rString,timestamp: timestamp,sign: hex_md5(s1).toUpperCase(),consigneeName: this.name,consigneePhoneNumber: this.phone,region: this.region,addressDetail: this.textarea,commoditiesId: 2,commoditiesCount: this.num,giftName: '',giftAppointmentTime: '',orderNote: this.text,wechatOpenId: this.OpenID,}axios({url: that.urls + '/wechatOrder/prepayActivityOrder',method: 'post',data: postData,headers: {"Content-Type": "application/json;charset=UTF-8"},}).then(res => {console.log(res)console.log(res.data.errorMessage)if (res.data.status == 200) {this.$message({showClose: true,message: '下单成功',customClass: 'customClass',type: 'success'});that.functionF(res.data.data);} else {this.$message({showClose: true,message: res.data.errorMessage,customClass: 'customClass',type: 'warning'});}}).catch(err => {console.log(err)})},functionF(data) {var vm = this;//下面是解决WeixinJSBridge is not defined 报错的方法if (typeof WeixinJSBridge == "undefined") {//微信浏览器内置对象。参考微信官方文档if (document.addEventListener) {document.addEventListener('WeixinJSBridgeReady', vm.onBridgeReady, false);} else if (document.attachEvent) {document.attachEvent('WeixinJSBridgeReady', vm.onBridgeReady);document.attachEvent('onWeixinJSBridgeReady', vm.onBridgeReady);}} else {vm.onBridgeReady(data);}},onBridgeReady(res) {var that = this;window.WeixinJSBridge.invoke('getBrandWCPayRequest', {// debug:true,"appId": res.appId,     //公众号名称,由商户传入"timeStamp": res.timestamp,         //时间戳,自1970年以来的秒数     "nonceStr": res.nonceStr, //随机串     "package": res.packageStr,"signType": "MD5",         //微信签名方式:     "paySign": res.sign //微信签名 },function (res) {if (res.err_msg == "get_brand_wcpay_request:ok") {// 使用以上方式判断前端返回,微信团队郑重提示://res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。}});},

微信公众号-网页内实现微信支付相关推荐

  1. 微信公众号网页支付详解

    首先先看微信公众开放文档:https://blog.csdn.net/qq_41971087/article/details/82466647 其实他的下单和我们微信小程序下单是一样的请观看:http ...

  2. 公众号开发(2) —— 盛派.net SDK + vue搭建微信公众号网页开发框架

    需求:通过微信公众号菜单跳转到手机端网页,跳转后通过微信授权登录获取微信公众号用户的OpenId(用户关注公众号后,用户在公众号的唯一凭证),通过OpenId和后台数据库用户信息绑定起来并实现一些业务 ...

  3. 微信公众号、内嵌H5字体受微信字体大小影响问题的解决方案

    微信公众号.内嵌H5字体受微信字体大小影响问题的解决方案,代码也是之前网上找的,现在记录一下 //微信公众号禁止设置老年字体 ;(function() {if (typeof WeixinJSBrid ...

  4. 微信公众号网页授权登录的超简单实现步骤

    微信开放平台为第三方移动程序提供分享.传播的接口, 使用户可将第三方程序的内容发布给好友或分享至朋友圈, 下面这篇文章主要给大家介绍了关于微信公众号网页授权登录的超简单实现方法, 需要的朋友可以参考下 ...

  5. metabase 以链接或图片查看_Python下载微信公众号文章内的图片

    刚刚说过使用python下载微信公众号文章内的视频,有兴趣的同学可以查看上一篇文章,此处就不放文章的链接了. 下面我们继续说一下,如何提取微信公众号文章内的图片并进行下载,下面一起来看一下. 01目标 ...

  6. 小程序 php wecahtpay,PHP 微信公众号,小程序获取支付参数。微信支付

    PHP 微信公众号,小程序获取支付参数.微信支付 发布时间:2018-09-26 11:19, 浏览次数:278 , 标签: PHP 首先下载微信官方demo放入项目中 地址:https://gith ...

  7. 微信公众号网页 H5 video 标签自动播放

    目录 微信公众号网页 H5 video 标签自动播放 问题描述 解决方案 微信公众号网页 H5 video 标签自动播放 环境:微信公众号网页 需求:H5 video 标签自动播放视频 video 标 ...

  8. 基于Thinkphp5+EasyWeChat+fastadmin微信小程序授权登录获取手机号微信公众号网页---联合授权登录

    战前准备 1.使用 composer 安装 EasyWeChat $ composer require overtrue/wechat:~4.0 -vvv 或者在composer.json文件renq ...

  9. 微信公众号网页授权--前端获取code及用户信息(vue)

    前段时间开发微信公众号网页授权,虽然网上已经有很多关于这方面的博客或者教程,但是第一次开发还是遇到挺多坑的,以下分享一下我的踩坑填坑之路. 一.测试号相关配置 首先在你公司申请的测试号上配置好相关信息 ...

  10. 微信公众号网页授权--前端获取code及用户信息(vue)【简单详细版】

    嗨喽大家好,前段时间开发微信公众号网页授权,虽然网上已经有很多关于这方面的博客或者教程,但是第一次开发还是遇到挺多坑的,以下分享一下我的遇到的一些问题的见解,希望对你们有帮助. 一.测试号相关配置 首 ...

最新文章

  1. 【深度学习】Focal Loss 与 GHM——解决样本不平衡问题
  2. 安装deepin linux
  3. 双表联查mysql_MySQL的双表多表联查
  4. 基于springboot框架的博客系统
  5. HDU 1257 最少拦截系统 简单DP
  6. 【翻译】PHP中 文字编码变换时 使用SJIS-win而非SJIS,使用eucJP-win而非EUC-JP
  7. 超市库存管理java sql_超市仓库管理系统的设计与实现(MySQL)
  8. VC6.0多行注释快捷键的设置
  9. 把系统桌面设置到D盘
  10. 基于AC自动机的表白墙解析工具
  11. 联想台式计算机内置网卡,联想台式机有没有无线网卡
  12. 阿里云数据迁移工具解决方案:华为云迁移到阿里云
  13. vue-time-slot 一款基于vue3的会议预约时间组件,时间轴为早7-晚11,可自由选择,并且非常方便。
  14. iPad莫名其妙黑屏了,无法打开屏幕?
  15. 沃美小镇电闪雷鸣 广宇连夜而来
  16. “老鲜肉”陈坤参加了“汇新杯”新兴科技+互联网创新大赛!
  17. win10密码清除技巧
  18. VS中警告等级的含义
  19. Flashnbsp;AS3nbsp;学习7nbsp;-nbsp;计时器
  20. [李景山php] php高级程序员简历的要点

热门文章

  1. unity+vuforia无法识别图片的解决方法
  2. java动图_马上学会!教你一个快速制作GIF动图的方法!
  3. python数据分析水果_用python解决简单的水果分类问题
  4. 这台计算机无法连接usb,爱思助手无法连接或者连接超时解决办法
  5. matlab 图片生成mif文件,使用MATLAB一鍵制作mif文件
  6. 小米路由器wifi显示无法连接服务器,小米路由器登录地址打不开怎么办?
  7. 【Hexo搭建个人博客】:yilia主题配置(二) - 背景图片
  8. flask框架可以做什么?
  9. oracle后台进程介绍,Oracle后台进程介绍
  10. HTB TIER 2 Archetype wp