相信很多朋友遇到过有些网站,可以直接通过一个连接就能让你的手机打开微信且跳转到某个指定的页面,许多程序员很好奇到底是怎么实现的,到处求这种方法的源码,在文本中我会介绍及剖析这种跳转实现的原理。

微信是个比较封闭的环境,至于为什么封闭,相信大家都了解,在一些应用场景中,我们要用到外部浏览器跳转到微信内部打开,比如添加好友、微信支付等,在微信内部环境直接长按二维码就能实现,确实方便很多。

言归正传,所有可以唤起微信的地址最终都会被转化为:“ weixin://...ticket=...”这种格式,其他的就是再怎么写,最终都是会走到获取 ticket 这一步,前面的“ weixin://...”是唤起微信的标准开头,主要用于在外部环境唤起微信。

在这插一句嘴,有人问为什么微博或者贴吧等 APP 里不能用这种格式的链接唤起微信呢?道理很简单,因为他们在制作 APP 的时候没有加这个唤起指令,换句话说,他们不想让用户跳到微信去,(都是流量 APP,不想自己的流量外流也是正常的),现在基本上大部分浏览器都支持这个唤起微信的指令,所以内嵌有浏览器的 APP 基本都能唤起微信,就可以支持微信跳转了。

再说下后面的 ticket,这里是关键,链接传到微信后,微信会判断是不是要让你在里面打开,就是用的这个 ticket 参数,,微信识别是否合法,都是判断 ticket,正常情况下,跟微信合作的大平台,微信会放给他们请求和分配合法 ticket 的接口。

市面上大部分公司或个人是没有这个待遇的,但也有这样的需求,怎么办呢?就是用各种手段从那些合作平台那“借用 ticket ”,严格来说,一个 ticket 产生后,有效时间只有 5 分钟,过了 5 分钟,会重新分配一个新的,所以有一个 ticket 也是没用的,必须要能对接其实时获取的接口,这就是为什么很多人奇怪为什么第一次能打开,过几分钟就失效打不开了,那是因为 ticket 的时间过期了。

得到的方法有很多,各大技术团队或个人,破解的、或者内部有人;做技术这行,其实圈子也不算大,如果刚好有同事在京东上班,就可以找他搞个接口给你用。如果没有后台,就靠技术破解了,这个有点运气成分的,不但要找到漏洞,还得能遇到稳定的漏洞,要不然过段时间就不能用了;我上次搞了个活动页活动结束,就没了。

比如京东,最近做了个活动,活动页带这个跳转,就去研究这个页面里面的漏洞,然后将其 ticket 接口截取下来自己用,但活动一旦结束,页面关闭,就没得玩了;所以要有专门的人去找各大合作伙伴的漏洞,拿他们近期出的活动页过来研究,截取他们的 ticket 获取方法,再变成接口拿出来用,这种破解不是说技术好就一定实现,主要靠运气。

很多人想研究这种跳转的原理,其实没有原理,就只是看你怎么拿到 ticket 而已

道理很简单,就像你问怎么开锁一样,不是开锁技术牛逼,是他们能找到原配的钥匙去配,等别人换了锁,又得重新找钥匙拿来配如果以后有人给你卖源码,说包一年,要么是骗子,要么,他用他的接口嵌入到了源码里,给你用了一年,别人随时都能停掉。

有需求就有利益,这就是产业链产生的雏形,很多人开始在网上叫卖微信跳转服务,而且这行都是按月卖的,现在知道为什么吗?因为懂行的都知道,说不定哪天就都不能用了,所以即使你口碑信用再好,破解被人封了,或者获取 ticket 的来源没有了,也没办法了,按月买,是比较保险的方式。

问:现在能实现这个功能的网站不多吧?

答:多,都是相互借用接口的,研究破解的源头就那么十几家,其他的,相当于代理吧,比如你在我这开了个接口,只限制域名不限制跳转次数,你也可以做一家一样的,所以很多人在我们这开户,去自己建网站赚差价,市面上价格 200-1000 不等就是这么来的。

问:如果真的要用到这个功能,怎么选择靠谱点的合作伙伴?

答:主要是看运气,再有就是不断地去试,第一看稳定性,靠谱点的会多备几个接口,防止哪家不能用了还能及时更换备用接口;你平时跳转的时候看看是不是只有一家还是可能出现好几家,jd,elong 等;第二看价格,这个不一定的,有的是因为倒手太多成本高才价格高的,有的是因为多备用好几个接口服务稳定才提高价格的,只能综合来看吧,高于 300 的价格就不要考虑了。

PS:其实个人也可以去微信申请接口的,只不过只适用于小范围,每天只分配 500 个 ticket,够用吗?

转自:https://www.jianshu.com/p/8f07946d7d6a


最近研究这个ticket,加了几个卖源码的QQ,有一个要500,一个要2000,还有一个要2W,呵呵,算 了,这个东西对我来说也没什么用

从手机浏览器或者 APP 中跳转到微信并跳转到指定页原理及行业内幕详解的更多相关文章

  1. 通过手机浏览器打开APP或者跳转到下载页面.md

    目录 通过手机浏览器打开APP或者跳转到下载页面 添加 schemes 网页设置 参考链接 通过手机浏览器打开APP或者跳转到下载页面 以下仅展示最简单的例子及关键代码 由于硬件条件有限,仅测试了 A ...

  2. 微信内嵌浏览器打开手机浏览器下载APP(APK)的方法

    想必大家会经常碰到网页链接在微信内无法打开和微信内无法打开app下载页的情况.通常这种情况微信会给个提示 “已停止访问该网址” ,那么导致这个情况的因素有哪些呢,主要有以下四点 1.网页链接被举报次数 ...

  3. Java中对象、对象引用、堆、栈、值传递以及引用传递的详解

    Java中对象.对象引用.堆.栈.值传递以及引用传递的详解 1.对象和对象引用的差别: (1).对象: 万物皆对象.对象是类的实例. 在Java中new是用来在堆上创建对象用的. 一个对象能够被多个引 ...

  4. 利用浏览器调试APP中的H5页面

    安卓手机的情况下,可以用chrome浏览器来调试. 打开地址: chrome://inspect/#devices 手机用USB数据线连接电脑,并启动USB调试模式. 只要在APP中打开H5页面,界面 ...

  5. 手机浏览器下IScroll中click事件

    产品的h5页面几乎都使用了iscroll插件,如果a标签在iscroll里,在部分手机浏览器中会出现无法点击的情况,不管是绑定click事件还是使用a标签的href属性.href属性偶尔还会能点击,c ...

  6. 手机页面或是APP中减少使用setTimeout和setInterval,因为他们会导致页面卡顿

    1.setTimeout致使页面的卡顿或是不流畅,打乱模块的生命周期 ,还有setTimeout其实是很难调试的. 当一个页面有众多js代码的时候,setTimeout就是导致页面的卡顿. var s ...

  7. Android中滑屏实现----手把手教你如何实现触摸滑屏以及Scroller类详解

    前言:  虽然本文标题的有点标题党的感觉,但无论如何,通过这篇文章的学习以及你自己的实践认知,写个简单的滑屏小 Demo还是just so so的. 友情提示: 在继续往下面读之前,希望您对以下知识点 ...

  8. weixin://connectToFreeWifi/协议如何跳转到微信客户端打开在wifi指定任意网页?

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

  9. weixin://connectToFreeWifi/?apKey=协议如何跳转到微信客户端打开在wifi指定任意网页?

    微信门店wifi接口,任意站跳转,跳转二维码长按识别加粉,接口支持动态传参数,支持微信支付等特殊接口对接. 代码如下使用 <head> <meta charset="utf ...

随机推荐

  1. java安全删除一个文件,防止工具恢复数据

    解决移动端文件删除的安全问题:file.delect()   Java 确保安全删除某个文件 http://outofmemory.cn/code-snippet/14222/Java-securit ...

  2. 前端HTML目录

    前端 HTML 简介 前端 HTML文档结构介绍 前端 HTML文档 详解 前端 HTML 注释 前端 HTML标签介绍 前端 HTML的规范 前端 HTML 常用标签 head标签相关内容 前端 H ...

  3. 帝国cms调用相关文章若没有则调取最新文章

    前面我们说了帝国cms调用最新文章 利用文字调用标签phomenews,现在我们说下相关文章的调用,如果文章有设置关键词的话可以直接用[!--other.link--]进行调取,现在我们来升级一下,如 ...

  4. Mysql事件监控日志

    建立监控表: CREATE TABLE `t_event_history` ( id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT, `dbname ...

  5. 安全易用的云许可-VirboxLM许可管理平台

    Virbox LM是深思推出的基于云许可管理的开放平台,旨在为开发者提供低成本.高强度.操作便捷的一站式软件保护方案. Virbox LM包括用户许可管理工具.加壳工具.API帮助工具.开发商管理工具 ...

  6. PHP中的回调函数

    回调函数是指调用函数的时候将另一个函数作为参数传递到调用的函数中,而不是传递一个普通的变量作为参数 使用回调函数是为了可以将一段自己定义的功能传到函数内部使用 声明回调函数的方法 变量函数声明 1 2 ...

  7. [py][mx]django处理登录逻辑

    浏览器同源策略(same-origin policy) csrf攻击防御核心点总结 django的cookie和session操作-7天免登录 flask操作cookie&django的see ...

  8. Maven - “Could not calculate build plan”问题

    解决方法如下: 1.将C:\User\.m2\repository\org\apache\maven\plugins\maven-deploy-plugin目录下的文件夹删除. 2.然后右击项目Mav ...

  9. ERROR [main] zookeeper.RecoverableZooKeeper: ZooKeeper create failed after 4 attempts

    ERROR [main] zookeeper.RecoverableZooKeeper: ZooKeeper create failed after 4 attempts ERROR [main] m ...

  10. pd.concat/merge/join

    pandas的拼接分为两种: 级联:pd.concat, pd.append 合并:pd.merge, pd.join 一.回顾numpy.concatenate 生成1个6*3的矩阵,一个2*3的矩 ...