当前位置: 首页 > news >正文

手机浏览器H5打开微信小程序支付,自定义传参

微信官方提供的开放文档如下:

静态网站 H5 跳小程序 | 微信开放文档

想必大家都能看懂官网提供的文档,但实战时却遇到很多问题,博主总结一下遇到的坑,如果您也有遇到,希望可以帮到您。

1.小程序已经发布上线了,怎么实现跳转呢?怎么开通云开发呢?

2.H5页面如何传自定义参数给到小程序呢?

3.不需要开通静态网站功能,不需要绑定自定义域名就能实现自动跳转

最终实现效果:

H5打开微信小程序支付

第一步:开通微信云开发

没有开通云开发资源的小程序是没有图上这个文件夹的,不管你得小程序之前有没有上架过,都需要在小程序编辑器中新建一个开通云微信开发的小程序,创建方式如下图:

如果你之前已经上架过小程序,目录可以选择你之前的文件夹,后端服务选择“微信云开发”,模板选择“基础”的就行

 第二步:创建完之后,可以按照微信官方文档,通过云开发控制台新建云函数

  1. 新建一个云函数,名为 public,然后将其 index.js 设为以下内容:
  2. 在云开发控制台中的设置 -> 权限设置中,将对应开通了静态网站的云环境开启未登录模式访问
  3. 在云开发控制台中的云函数 -> 权限设置中,配置安全规则,选择 “允许所有用户访问” 的模板并确认。如果需要更安全的控制,即只让 public 函数开启未登录访问,可参见底部安全规则模板

只需要保留public函数,其他函数可以删除(小程序如果自带其他云函数业务可自行保留) 

创建完之后,在微信编辑器中修改云函数public中index.js的代码(加多了页面参数的传递)

 index.js代码如下:

// 云函数入口文件
const cloud = require('wx-server-sdk')
cloud.init()
// 云函数入口函数
exports.main = async (event, context) => {const wxContext = cloud.getWXContext()switch (event.action) {case 'getUrlScheme': {return getUrlScheme(event.options)//与官方文档区别:小程序页面接受的参数}}return 'action not found'
}
async function getUrlScheme(options) {//return options;return cloud.openapi.urlscheme.generate({jumpWxa: {path: '/pages/pay/pay', // 调转到小程序要打开的页面路径,根据实际业务设置query: options,//与官方文档区别:小程序页面接受的参数},// 如果想不过期则置为 false,并可以存到数据库isExpire: false,// 一分钟有效期expireTime: parseInt(Date.now() / 1000 + 60),})
}

 云函数修改完之后记得public右键选择:创建并部署:云端安装依赖(不上传node_modules) 

第三步:小程序内部页面设置

外部链接打开小程指定页面,根据实际业务进行设置,我这里设置了支付页面,小程序代码可参考博主之前的文章:微信H5页面实现微信小程序支付_小程序嵌套h5页面调起支付_我是小木木的博客-CSDN博客

 第四步:H5前端页面设置

只需要在页面加上以下代码即可,页面js调用openWeapp方法,传相应的支付金额即可。

<!-- 云开发 Web SDK -->
<script src="https://res.wx.qq.com/open/js/cloudbase/1.1.0/cloud.js"></script><script>var c = new cloud.Cloud({// 必填,表示是未登录模式identityless: true,// 资源方小程序 AppIDresourceAppid: 'wx6aXX',  // 资源方环境 IDresourceEnv: 'XXXXXXX',  })c.init();window.c = c//需要延迟加载,要使用async	async function openWeapp(amount) {var c = window.cconst res = await c.callFunction({name: 'public',data: {action: 'getUrlScheme',options:'amount='+amount},})location.href = res.result.openlink;}</script>

相关文章:

手机浏览器H5打开微信小程序支付,自定义传参

微信官方提供的开放文档如下&#xff1a; 静态网站 H5 跳小程序 | 微信开放文档 想必大家都能看懂官网提供的文档&#xff0c;但实战时却遇到很多问题&#xff0c;博主总结一下遇到的坑&#xff0c;如果您也有遇到&#xff0c;希望可以帮到您。 1.小程序已经发布上线了&…...

Aligning Large Language Models with Human: A Survey

本文也是LLM相关的综述文章&#xff0c;针对《Aligning Large Language Models with Human: A Survey》的翻译。 对齐人类与大语言模型&#xff1a;综述 摘要1 引言2 对齐数据收集2.1 来自人类的指令2.1.1 NLP基准2.1.2 人工构造指令 2.2 来自强大LLM的指令2.2.1 自指令2.2.2 …...

windows图标白了,刷新图标

1.进入C盘&#xff0c;user(用户文件夹)&#xff0c;进入当前用户文件夹&#xff0c;再进入隐藏文件夹(AppDada)&#xff0c;最后进入Local 2.删除Local文件夹里的IconCache.db文件 3.重启资源管理器 -------------------------------------------- 或者创建bat文件&#xf…...

C++ 左值和右值

C 左值和右值 左值、右值左值引用、右值引用std::move()std::move()的实现引用折叠 完美转发forward()的实现函数返回值是左值还是右值如何判断一个值是左值还是右值 左值、右值 在C11中所有的值必属于左值、右值两者之一&#xff0c;右值又可以细分为纯右值、将亡值。在C11中…...

c++学习(智能指针)[29]

RALL RALL&#xff08;Resource Acquisition Is Initialization&#xff09;是一种 C 的编程技术&#xff0c;用于管理资源的获取和释放。它的基本思想是在对象的构造函数中获取资源&#xff0c;在对象的析构函数中释放资源&#xff0c;从而确保资源的正确获取和释放。 RALL 的…...

B站高播放又涨粉的带货UP主怎么做?

飞瓜数据&#xff08;B站版&#xff09;上线新功能【带货达人榜】&#xff0c;由榜单显示&#xff0c;B站7月带货达人中&#xff0c;平均播放量最高的是UP主下个月一定中100万。 带货视频仅1支&#xff0c;播放量已经高达679万&#xff0c;值得一提的是&#xff0c;6月他也是带…...

AD21 PCB设计的高级应用(四)FPGA的管脚交换功能

&#xff08;四&#xff09;FPGA的管脚交换功能 高速 PCB 设计过程中,涉及的 FPGA等可编程器件管脚繁多,也因此导致布线的烦琐与困难&#xff0c;Altium Designer 可实现 PCB 中 FPGA 的管脚交换&#xff0c;方便走线。 1.FPGA管脚交换的要求 (1)一般情况下,相同电压的 Bank之…...

超低功耗LCD段码屏驱动显示芯片VK1621原厂芯片

型 号&#xff1a;VK1621 / 品 牌&#xff1a;VINKA/永嘉微电 最新年份 VK1621 是一个324的LCD驱动器&#xff0c;可软体程式控制使其适用于多样化的LCD应用线路&#xff0c;仅用到3至4条信号线便可控制LCD驱动器&#xff0c;除此之外也可介由指令使其進入省电模式 M1855 …...

【深入探索Docker】:开启容器化时代的技术奇迹

深入探索Docker 深入探索Docker&#xff1a;开启容器化时代的技术奇迹前言1. 容器化&#xff1a;实现快速部署和可移植性2. 虚拟化&#xff1a;提高安全性和可靠性3. 映像&#xff1a;打包应用及依赖项的模板4. 网络管理&#xff1a;连接容器和主机5. 持久化数据&#xff1a;保…...

【Ajax】笔记-JQuery发送jsonp请求

前端 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>jQuery-jsonp</title><style>#re…...

docker更换数据存储路径

1. 先停掉docker服务 sudo systemctl stop docker 可能会出现的问题&#xff1a; 这样会导致docker关闭失败,解决办法&#xff1a;systemctl stop docker.socket 确保docker关闭: 2.备份现在的 Docker 数据存储目录 /var/lib/docker(默认路径) mv /var/lib/docker /var/lib/…...

GPT告诉你如何延长周末体验

对于常常感到疲劳的打工人和学生党&#xff0c;过周末需要找到一种平衡&#xff0c;既能够休息放松&#xff0c;又能够提升身心能量。以下是一些建议&#xff0c;希望对你有所帮助&#xff1a; 制定休息计划&#xff1a;在周末前&#xff0c;制定一个休息计划&#xff0c;明确…...

一百四十一、Kettle——kettle8.2在Windows本地开启carte服务以及配置子服务器

一、目的 在kettle建好共享资源库后&#xff0c;为了给在服务器上部署kettle的carte服务躺雷&#xff0c;先在Windows本地测试一下怎么玩carte服务 二、Kettle版本以及在Windows本地安装路径 kettle版本是8.2 pdi-ce-8.2.0.0-342 kettle本地安装路径是D:\j…...

你知道充电桩控制主板的结构吗?

你知道充电桩控制主板的结构吗? 你是否曾经遇到过电动车行驶途中突然没电的情况?不用担心&#xff0c;解决这个问题的方法之一就是使用充电桩。那么&#xff0c;控制主板是如何控制充电桩的呢?让我们一起来探究一下。 充电桩控制主板由多种元件组成&#xff0c;包括主控芯片…...

LeetCode 25题:K个一组翻转链表

题目&#xff1a; 给你链表的头节点 head &#xff0c;每 k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#xff0c;那么请将最后剩余的节点保持原有顺序。 你不能只是单纯…...

Day 19 C++ 文件操作

C 文件操作 文件为什么要使用文件文件类型文本文件 - 文件以文本的ASCII码形式存储在计算机中二进制文件 - 文件以文本的二进制形式存储在计算机中 操作类型ofstream&#xff1a;写操作ifstream&#xff1a; 读操作fstream &#xff1a; 读写操作 文本文件写文件引入头文件 \&l…...

Nginx源码安装

文章目录 Nginx源码安装注安装pcre库安装openssl库创建用户及用户组安装编译环境解压文件检测环境重要目录检查配置服务启动脚本查看效果&#xff1a; Nginx源码安装 注 本实验基于RHEL73.10.0-327.el7.x86_64&#xff0c;尽量使用RHEL7或CentOS7。 安装pcre库 安装 pere 库…...

【数据结构和算法】--N叉树返回根节点到目标节点的路径

目录 一、前言二、Java代码实现 一、前言 项目中接触一个问题&#xff1a;在大量有父子关系的列表中&#xff0c;需要筛选出特定约束的数据【要求某个目标节点延续到根节点的数据】。这个问题抽象为数据结构&#xff0c;就是&#xff1a;N叉树返回根节点到目标节点的路径 二、…...

Flutter环境搭建踩坑集锦

Flutter 背景准备工作先检查一下自己的电脑&#xff0c;看一下是不是满足配置要求下载安装配置环境下载安装JDK下载安装Android studio下载Flutterflutter doctor故障Android license status unknownNetwork resources 故障 后记 背景 发现一个不错的框架Flutter&#xff0c;听…...

WPF上位机7——MySql

MySql DML语句 db操作、表操作 字段的数据类型 修改表 表的数据操作 DQL语句 数据查询和去重查询 条件查询 模糊查询 聚合查询 分组查询 排序查询 分页查询 DCL语句 函数 字符串处理函数 数值函数 日期函数 流程函数 约束 外键约束 多表查询 内连接 外连接 自连接 子查询 列…...

3个实用技巧:掌握Chrome文本替换插件的终极指南

3个实用技巧&#xff1a;掌握Chrome文本替换插件的终极指南 【免费下载链接】chrome-extensions-searchReplace 项目地址: https://gitcode.com/gh_mirrors/ch/chrome-extensions-searchReplace 你是否曾在浏览网页时发现错别字却无法修改&#xff1f;是否需要对大量重…...

Windows多显示器DPI缩放终极控制指南:告别显示不一致的烦恼

Windows多显示器DPI缩放终极控制指南&#xff1a;告别显示不一致的烦恼 【免费下载链接】SetDPI 项目地址: https://gitcode.com/gh_mirrors/se/SetDPI 还在为Windows多显示器DPI缩放不一致而烦恼吗&#xff1f;SetDPI是一款免费、高效的C命令行工具&#xff0c;让你通…...

Qt——Qt中的标准对话框

1.消息对话框是应用程序中最常见的界面元素消息对话框主要用于&#xff1a;为用户提示重要信息&#xff0c;强制用户进行操作选择2.文件对话框Open Mode——应用程序中需要用户打开一个外部的文件Save Mode——应用程序中需要将当前内容存储在用户指定的外部文件中Widget.h#ifn…...

ChanlunX缠论插件:3步实现股票技术分析的终极可视化方案

ChanlunX缠论插件&#xff1a;3步实现股票技术分析的终极可视化方案 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX ChanlunX缠论可视化插件是专为通达信用户开发的智能缠论分析工具&#xff0c;通过自动…...

Qwen3-TTS-Tokenizer-12Hz惊艳效果:歌声合成中音高与音色细节保留展示

Qwen3-TTS-Tokenizer-12Hz惊艳效果&#xff1a;歌声合成中音高与音色细节保留展示 1. 引言&#xff1a;歌声合成的技术突破 你有没有遇到过这样的情况&#xff1a;听到一首AI生成的歌曲&#xff0c;旋律很美&#xff0c;但总觉得少了点什么&#xff1f;可能是声音不够自然&am…...

SiameseUIE在政务舆情监测中的应用:从长文本中秒级抽取主体、事件、地点、时间

SiameseUIE在政务舆情监测中的应用&#xff1a;从长文本中秒级抽取主体、事件、地点、时间 1. 引言&#xff1a;当海量舆情遇上精准信息抽取 想象一下&#xff0c;你是一位政务舆情分析师&#xff0c;每天要面对成千上万条来自新闻、论坛、社交媒体的信息。领导突然问&#x…...

GD32单片机ADC实战:从传感器到上位机,搞定50kg压力采集全流程(附源码/原理图)

GD32单片机ADC实战&#xff1a;从传感器到上位机的50kg压力采集全流程解析 在嵌入式开发领域&#xff0c;压力采集系统是工业自动化、医疗设备和消费电子产品中的常见需求。本文将带你从零开始&#xff0c;使用GD32单片机的12位ADC模块&#xff0c;构建一个完整的50kg量程压力采…...

PyTorch 2.9镜像新手教程:5分钟学会调用预训练模型做推理

PyTorch 2.9镜像新手教程&#xff1a;5分钟学会调用预训练模型做推理 1. 为什么选择PyTorch 2.9镜像&#xff1f; PyTorch作为当前最流行的深度学习框架之一&#xff0c;其2.9版本带来了多项性能优化和新特性。对于刚入门深度学习的开发者来说&#xff0c;直接使用预配置好的…...

麦橘超然Flux控制台:如何保存模板、管理显存、提升生成效率

麦橘超然Flux控制台&#xff1a;如何保存模板、管理显存、提升生成效率 1. 为什么选择Flux控制台进行AI图像生成 在本地运行AI图像生成工具时&#xff0c;我们常常面临三个主要挑战&#xff1a;显存不足导致崩溃、复杂的参数设置让人望而却步&#xff0c;以及漫长的部署过程消…...

智能车竞赛独轮组信标灯系统全解析:从硬件选型到实战调试技巧

智能车竞赛独轮组信标灯系统全解析&#xff1a;从硬件选型到实战调试技巧 信标灯系统作为智能车竞赛独轮组的核心模块&#xff0c;直接决定了车模的导航精度和比赛成绩。一套稳定高效的信标灯系统需要硬件选型、信号处理、算法优化和实战调试的完美配合。本文将深入剖析信标灯系…...