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

摘要:
我相信很多朋友都遇到过一些网站,这些网站可以让你的手机打开微信,并通过连接直接跳转到特定页面。许多程序员对如何实现这种方法感到好奇,他们到处寻找这种方法的源代码。在本文中,我将介绍和分析这种跳转实现的原理。总之,有人问,为什么微博、贴吧等APP不能使用这种形式的链接来唤起微信?

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

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

    言归正传,所有可以唤起微信的地址最终都会被转化为:“ 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 中跳转到微信并跳转到指定页原理及行业内幕详解》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Asp.Net WebAPI 通过HttpContextBase或者HttpRquest 获取请求参数UDP协议学习(转)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

[开源] C# 封装 银海医保的接口

Github 地址: https://github.com/zifeiniu/YinHaiYiBaoCSharpAPI C#Model封装 银海医保的接口 介绍 银海医保的接口我就不说了,很多家医院在用,但是网上资料不多,接口通过COM组件调用。官方示例有VB,delphi,PB。 我们的HIS是B/S 程序,不能直接调用,所以通过此程序封装银海接口后,通...

媒体查询的详细用法

media type(媒体类型)是css 2中的一个非常有用的属性,通过media type我们可以对不同的设备指定特定的样式,从而实现更丰富的界面。media query(媒体查询)是对media type的一种增强,是CSS 3的重要内容之一。随着移动互联网的发展,media query开始得到大家的重视。 media type 让我们先了解一下med...

iOS应用程序的跳转和URL Scheme的使用

第一:什么是URL Scheme与Android的URL Scheme类似,是为方便app之间互相调用而设计的。你可以通过一个类似URL的链接,通过系统的OpenURl来打开该app,并可以传递一些参数。每个URL必须能唯一标识一个APP,如果你设置的URL与别的APP的URL冲突,此时,你的APP不一定会被调用起来,原因是当APP在安装的时候就已经在系统...

java8之接口增强

Java8是由oracle公司于2014年3月正式发布,它是继java5 以来最重要的发布版本。Java8包含了很多新的特性,可以简化开发,提升代码的可读性。 Java8的一些重要新特性包括: l接口增强 l方法引用 lLambda表达式 lStream 其中还有一些其他的特性,比如注解的更新,以及一些新的API等。以上四个特性在java8的开发中会比较常...

和小猪一起搞微信公众号开发—二维码创建使用流程(需要授权)

使用该接口可以获得多个带不同场景值的二维码,用户扫描后,公众号可以接收到事件推送。 目前有2种类型的二维码,分别是临时二维码和永久二维码,前者有过期时间,最大为1800秒,但能够生成较多数量,后者无过期时间,数量较少(目前参数只支持1--1000)。两种二维码分别适用于帐号绑定、用户来源统计等场景。 用户扫描带场景值二维码时,可能推送以下两种事件: 如果...

uni APP 微信小程序获取授权的微信信息

根据微信小程序开发文档,获取用户信息的接口有3个UserInfo,wx.getUserInfo,wx.getUserProfile。 UserInfo比较老就不用了。wx.getUserInfo基础库版本 2.3.1 以后支持,但是必须用户授权 scope.userInfo。 wx.getUserProfile 基础库 2.10.4 开始支持,获取用户信息...