小程序扫描普通链接二维码跳转小程序指定界面方法


Posted in Javascript onMay 07, 2019

微信官方文档https://developers.weixin.qq.com/miniprogram/introduction/qrcode.html

看了官方文档之后,还是存在很多困惑,微信小程序是托管到微信服务器上的,要想扫描普通链接跳转指定界面,首先要知道微信把小程序放的服务器的访问路径,这些最初想法,可是看微信官方文档,感觉不是我想的这样的

小程序扫描普通链接二维码跳转小程序指定界面方法

文档上:“二维码规则的域名须通过ICP备案的验证。”如果是微信的服务器,那他们就不必这么写了,

可是小程序是托管微信服务器上的,为什么扫码自己服务器上的url能跳转呢?困惑反倒是多了,然后各种查资料,最后还是在微信官方文档上找到答案了

 小程序扫描普通链接二维码跳转小程序指定界面方法

原来是这样!恍然大悟!微信会扫描所有自己配置的url,如果匹配上了,就跳转至指定界面,还有个前提,小程序必须先发布代码,才可以。

小程序扫描普通链接二维码跳转小程序指定界面方法

 下面记录一下详情:

1.二维码规则,这里需要下载微信提供的验证文件,放到指定目录,验证不过会有提示,验证过了如图所示,配置几层目录根据自己的需求而定,上图这个:https://www.aaa.com/a/b/c/ 验证文件放置到c目录同层

2.测试链接,这里的url就是扫码之后,跳转到你指定界面里,可以获取到你此处配置这个完整的url包括参数,当然,这个参数是一个动态参数,配置的时候是写死了一个,你的应用中,自己动态生成这个参数,
https://www.aaa.com/a/b/c/d/service?flag=123 目录a/b/c/d/是在你的服务器上真实存在的目录,在d目录里面有个脚本service,当然目录名称脚本名称换成你自己的,flag这个key值不能改变,123换成你的实际生成的动态参数

3.在app.js中这样获取参数
util.js
/**
* 获取url参数
*/

let getQueryString = function (url,name) {
 console.log("url = "+url)
 console.log("name = " + name)
 var reg = new RegExp('(^|&|/?)' + name + '=([^&|/?]*)(&|/?|$)', 'i')
 var r = url.substr(1).match(reg) 
 if (r != null) {
  console.log("r = " + r)
  console.log("r[2] = " + r[2])
  return r[2]
 }
 return null;
}
module.exports = {
 getQueryString: getQueryString,
}

//app.js文件如下:

var utils = require('./utils/util')

App({
 onLaunch: function (options) {
  console.log("全局onLaunch options==" + JSON.stringify(options))
  let q = decodeURIComponent(options.query.q)
  if (q){
   console.log("全局onLaunch onload url=" + q)
   console.log("全局onLaunch onload 参数 flag=" + utils.getQueryString(q, 'flag'))
  }

 }

})

在其它的界面中的js脚本中这样获取参数

Page({

 /**
  * 页面的初始数据
  */
 data: {

 },

 /**
  * 生命周期函数--监听页面加载
  */
 onLoad: function (options) {
  console.log("index 生命周期 onload"+JSON.stringify(options))
  //在此函数中获取扫描普通链接二维码参数
  let q = decodeURIComponent(options.q)
  if(q){
   console.log("index 生命周期 onload url=" + q)
   console.log("index 生命周期 onload 参数 flag=" + utils.getQueryString(q, 'flag'))
  }
 }

})

以上所述是小编给大家介绍的小程序扫描普通链接二维码跳转小程序指定界面详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript实例教程(19) 使用HoTMetal(3)
Dec 23 Javascript
Jquery 学习笔记(一)
Oct 13 Javascript
jquery的ajax()函数传值中文乱码解决方法介绍
Nov 08 Javascript
javascript的document.referrer浏览器支持、失效情况总结
Jul 18 Javascript
jQuery中append()方法用法实例
Dec 25 Javascript
JS实现新浪微博效果带遮罩层的弹出框代码
Oct 12 Javascript
java必学必会之static关键字
Dec 03 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
Oct 28 Javascript
旺旺在线客服代码 旺旺客服代码生成器
Jan 09 Javascript
使用javascript做在线算法编程
May 25 Javascript
vue中如何实现pdf文件预览的方法
Jul 12 Javascript
微信小程序实现通讯录列表展开收起
Nov 18 Javascript
VUE接入腾讯验证码功能(滑块验证)备忘
May 07 #Javascript
vue接入腾讯防水墙代码
May 07 #Javascript
基于Vue实现的多条件筛选功能的详解(类似京东和淘宝功能)
May 07 #Javascript
详解vue中使用protobuf踩坑记
May 07 #Javascript
Node.js一行代码实现静态文件服务器的方法步骤
May 07 #Javascript
微信小程序扫描二维码获取信息实例详解
May 07 #Javascript
Vue数据绑定简析小结
May 07 #Javascript
You might like
PHP怎样调用MSSQL的存储过程
2006/10/09 PHP
聊天室php&mysql(四)
2006/10/09 PHP
使用网络地址转换实现多服务器负载均衡
2006/10/09 PHP
php修改时间格式的代码
2011/05/29 PHP
PHP获取数组中指定的一列实例
2017/12/27 PHP
List all the Databases on a SQL Server
2007/06/21 Javascript
javascript dom 基本操作小结
2010/04/11 Javascript
dess中一个简单的多路委托的实现
2010/07/20 Javascript
JQuery 常用方法和事件详细介绍
2013/04/18 Javascript
分享我对JS插件开发的一些感想和心得
2016/02/04 Javascript
js剪切板应用clipboardData实例解析
2016/05/29 Javascript
vue-router实现webApp切换页面动画效果代码
2017/05/25 Javascript
SeaJS中use函数用法实例分析
2017/10/10 Javascript
vue-cli项目中使用Mockjs详解
2018/05/14 Javascript
详解基于webpack&gettext的前端多语言方案
2019/01/29 Javascript
node.js监听文件变化的实现方法
2019/04/17 Javascript
8个有意思的JavaScript面试题
2019/07/30 Javascript
JS访问对象两种方式区别解析
2020/08/29 Javascript
详解 javascript对象创建模式
2020/10/30 Javascript
Vue 打包的静态文件不能直接运行的原因及解决办法
2020/11/19 Vue.js
python语言使用技巧分享
2016/05/31 Python
python编程线性回归代码示例
2017/12/07 Python
Python使用Selenium+BeautifulSoup爬取淘宝搜索页
2018/02/24 Python
wx.CheckBox创建复选框控件并响应鼠标点击事件
2018/04/25 Python
在python中对变量判断是否为None的三种方法总结
2019/01/23 Python
Python 中list ,set,dict的大规模查找效率对比详解
2019/10/11 Python
Python退出时强制运行一段代码的实现方法
2020/04/29 Python
.net C#面试题
2012/08/28 面试题
奥巴马的演讲稿
2014/05/15 职场文书
党员群众路线对照检查材料思想汇报
2014/09/17 职场文书
简历自我评价模板
2015/03/11 职场文书
小学教师个人工作总结2015
2015/04/20 职场文书
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
浅谈Go语言多态的实现与interface使用
2021/06/16 Golang
victoriaMetrics库布隆过滤器初始化及使用详解
2022/04/05 Golang
Golang 入门 之url 包
2022/05/04 Golang