首页 > 编程语言 >支付宝小程序扫码爬坑

支付宝小程序扫码爬坑

时间:2023-11-23 17:35:14浏览次数:28  
标签:支付宝 扫码 qrCode 微信 程序 获取 test query

最近公司项目有个扫码打开订单付款的功能大概是这样的(uniapp 项目)

微信支付暂且不说网上教程也很丰富

重点讲讲支付宝(吐槽下支付宝小程序审核,真是太慢了,一天只能审核大概3-4次 每次审核要耗时 好几个小时)

基本开发思路是这样的(vue/uni-app):

1.打开页面前获取传入参数(onload)
2.根据传入参数发起网络请求获取订单详情
3.根据平台发起支付

 在微信上很顺利的成功获取到微信扫码传来的参数(q) 注意这个q 在微信扫描获取到的参数(例如:https://test.com/orderNo/1111222)在微信扫码的情况下得到的数据是这样的:

 

 {q: "https%3A%2F%2Fbdtest.com%2Forder%2F111222"}

 

 在支付宝扫码获取到的参数是这样的:

{"path":"pages/index/index","query":{"qrCode":"https://test.com/orderNo/111222"}}

 注意!注意!注意!

 微信获取参数是在 onl oad 下面 。支付宝不是 支付宝不是 支付宝不是 支付宝需要通过 onLanch 获取,而且onLanch是在项目启动时才能调用到页面内想要获取:

 

onLaunch(options){
    my.alert({
      title: 'app onLaunch',
      content:  JSON.stringify(options),
      success: (res) => {
          //成功处理代码段
      },
    });
  //获取关联普通二维码的码值,放到全局变量qrCode中
  if (options.query && options.query.qrCode) {
      let scene = decodeURIComponent(options.query.qrCode);// http://5de844c.ngrok.io/xxx?a=cc&ccs=sxxxx
      let temp = scene.split('?')
      let test = temp[1].split('&');
     console.log("temp:",temp[1]);// temp: a=cc&ccs=sxxxx
     console.log("test:",test[0]);// test: a=cc
     console.log("test:",test[1]);// test: ccs=sxxxx
    }  
}

 

想要在页面内获取到扫描参数要这样(疯狂吐槽):

onLoad() {
    //页面中也可以获取query参数:query: { a: 'foo',b: 'bar'}
     let params = uni.getLaunchOptionsSync().query //{"qrCode":"https://test.com/orderNo/111222"}
let url = params.qrCode
},

特此记录

 补充:

支付宝 和微信小程序 后台斗腰配置 二维码

支付宝后台:

 

 微信小程序后台:

配置大同小异

 

标签:支付宝,扫码,qrCode,微信,程序,获取,test,query
From: https://www.cnblogs.com/wobeinianqing/p/17852080.html

相关文章

  • 如何在关闭远程桌面后继续自动化程序
    问题描述通常情况下在远程连接关闭后windows将进入待机状态,无法进行界面渲染,所以某些自动化应用将无法运行,为了在远程连接关闭后仍然能够运行应用,需要使用下面的方式关闭远程桌面。解决方案创建文件close_mstsc_new.bat,复制以下代码并保存for/f"skip=1tokens=3"%%si......
  • 最新demo版 | 如何0-1开发支付宝小程序之小程序页面功能介绍(三)
    前两期讲了小程序开发的准备工作以及前期需要如何调试,今天我们就来介绍下开发一个支付宝小程序页面需要了解哪些信息。一个小程序页面的整体功能的构成离不开页面展示(AXML)、页面样式(ACSS)以及页面逻辑(JS)这三方面,下面本文将从这三方面具体展开。一、AXML(组件)AXML页面一般用来......
  • H5+ plus.barcode.Barcode 扫码控件 返回数据错误
    创建扫码控件扫描比较复杂的条形码时返回数据错误,扫到的总是一些不相干的数据,极小概率可以扫到正确的数据,代码中已经配置条码类型过滤器,filters,代码和条码如下scan=newplus.barcode.Barcode('bcid',["plus.barcode.CODE128","plus.barcode.QR"]);原......
  • C++程序编译常见错误与评测各个状态含义
    编译常见错误提示1.[Error]expected';'before'cout'。在cout前面,缺少一个分号。2.[Error]'b'wasnotdeclaredinthisscope。未定义变量名b。3.[Error]stray'\243'inprogram\stray'\273'inprogram。不可识别的非法字符。4.[Error]ldretu......
  • 使用 MSYS2+MinGW 编译win程序
    在跨平台开发场景下,MinGW为那些习惯于使用GNU工具(例如gcc、gdb、make等)的开发者提供了一个便利:它允许他们在Windows平台上使用相同的工具链。这种做法有助于保持在不同操作系统间的开发一致性。此外,当某个应用依赖于Unix系统下的特定库,而这些库在Windows下没有直接的替代品时,MSYS2......
  • 第 11 节 Python程序调试和异常处理技巧
    常见的错误语法错误:例如,不正确的缩进、未定义的变量、括号不匹配等。运行时错误:例如,尝试访问不存在的文件、内存溢出等。类型错误:例如,将字符串与整数相加等。逻辑错误:例如,程序没有按照预期的流程执行、条件判断不正确等。输入错误:例如,无效的输入、输入的数据类型不正确等。常见的错......
  • 使用Poco库编写一个采集阿里云信息的程序
    ```cpp//引入Poco库#include<Poco/Net/HTTPClientSession.h>#include<Poco/Net/HTTPRequest.h>#include<Poco/Net/HTTPResponse.h>#include<Poco/URI.h>//创建HTTP客户端会话对象Poco::Net::HTTPClientSessionsession("www.aliyun.com",......
  • 用R库编写的钉钉图片采集程序
    ```R#安装httpRequest库install.packages("httpRequest")#导入httpRequest库library(httpRequest)#设置代理服务器信息proxy_host<-"xxx.xxx.xxx"proxy_port<-8000#设置要抓取的网址url<-"https://www.dingtalk.com/"#使用httpGet函数发送......
  • 微信小程序商店导航网站系统模板源码
    微信小程序商店导航网站系统源码是基于帝国cms开源程序开发的一款小程序二维码收录大全的导航系统。模板源码无任务限制,可以随便修改成喜欢的页面,有能力者可以二次开发。本小程序导航网站源码前端自适应手机WAP页面。适用范围:微信小程序导航网站、微信公众号导航网站、微......
  • c++小程序/随机产生100以内的一个自然数,给出7次机会猜测数的大小
    一、随机产生100以内的一个自然数,给出7次机会猜测数的大小要求:1、 如果猜对了,提示:“真聪明,您猜对了!”,并退出程序2、 如果猜得数比随机数大,给出提示“你猜的数太大了”3、 如果猜得数比随机数小,提示“您猜的数太小了”,如果超出七次没有猜对,提示“很遗憾,您没有猜对”,并退出程序......