想问下试客小兵获取微信用户信息是如何实现的?

2015-03-17 11:15:41 +08:00
 benter

有人关注过应用试客这个微信公众号吗?他有个应用叫试客小兵,他获取我微信信息的方式很奇怪,流程是如下:

’关注他们的公众号’ - ‘获取APP(试客小兵)下载地址‘ - ’下载‘ - ‘运行APP’ 一运行这个app,app就自动获取了我的微信信息(昵称,头像,openid)

这个应用是怎么获取我的信息的?

目前知道微信公众号可以获取我的微信资料,但APP是怎么知道我当前登陆的哪个微信用户,并获取相应用户的信息的?

14574 次点击
所在节点    iOS
30 条回复
kacong
2015-03-17 11:52:54 +08:00
url referral 里面难道有相关的信息的蛛丝被他们解读了?
wdd2007
2015-03-17 11:59:19 +08:00
1、微信公众号可以获取你的微信资料;

2、网页和 App 是可以建立通信的;

3、所以是网页把你的信息传给了 App。
frankzeng
2015-03-17 12:00:52 +08:00
是网页传过去的吧
abelyao
2015-03-17 12:04:51 +08:00
我就好奇楼主用的是 iOS 吗?APP 是在 App Store 下载的吗?
ETiV
2015-03-17 12:11:49 +08:00
如果是网页部分实现的,LZ可以试试做一次中间人,看看各种http请求。
b821025551b
2015-03-17 12:32:46 +08:00
广告,各位block吧
qiayue
2015-03-17 12:39:51 +08:00
我的想法是,你打开下载页面的时候,网页获取到了你的 iOS 设备的某个唯一码,并且与你的微信对应那个公众号的 opneid 相关联。
安装好应用后,应用也去获取你的这个唯一码,就能够跟你的微信绑定了
simman
2015-03-17 12:42:37 +08:00
1、下载完应用以后是否需要再次使用微信登陆?
2、请问是IOS还是Android应用?

=======
1、如果下载完应用以后还需要再次使用微信登陆,那么当然可以通过SDK拿到相关的信息。
2、下载应用的时候通过记录Session,或者其他的表示记录此台设备登陆的微信信息。然后打开应用就可以在服务器端拿到信息了。
benter
2015-03-17 14:02:07 +08:00
@b821025551b 不是广告。
benter
2015-03-17 14:03:11 +08:00
@abelyao 他们应用是通过证书分发,估计使用了私有函数,不能在苹果商城下载
benter
2015-03-17 14:03:40 +08:00
@simman 下载应用之后,不需要再登录微信了。直接运行那个应用就可以获取到我的微信信息了。
benter
2015-03-17 14:06:15 +08:00
@qiayue 微信JS SDK没有提供相应获取设备的API,另外据我所知,网页通过User Agent 获取到的设备信息不包含设备唯一码,网页貌似也获取不到什么设备唯一码。
benter
2015-03-17 14:07:20 +08:00
@wdd2007 这个目前没考虑过,请问微信里网页怎么和我的应用通信,还没想到怎么能通信。
touzi
2015-03-17 14:14:01 +08:00
关注的时候就获取了头像用户名,然后你跳转App Store时有小尾巴标记就可以了
abelyao
2015-03-17 14:15:20 +08:00
@benter 网页获取你的 IP 地址以及 UserAgent 等识别信息,然后 APP 中也获取这些,很大程度上就可以匹配到一起了
abelyao
2015-03-17 14:17:59 +08:00
@benter 使用私有函数的话玩法就多咯,甚至是根据你的 openid 动态生成一个 app 给你都可以
chairuosen
2015-03-17 14:21:46 +08:00
那个app可能不同url会埋不同初始信息?埋了你的fake_id,再去自己库里取fake_id对应信息就行
benter
2015-03-17 17:04:09 +08:00
@abelyao 你说的第一种很大概率可以匹配,是OK的,其实还是一个概率问题,比如同一局域网3台5s,系统也相同,就出现混乱了,因为网页获取的信息都是一样的,第二种,就是不同的用户打不同的ipa,就能完全匹配了,另外还想到一种,网页写cookies,在微信app的cookies里,然后他的应用读cookies,这个要绕过沙盒,还没找到方法获取到其他应用的cookies。
b821025551b
2015-03-17 17:52:34 +08:00
@benter 好吧,我错了。刚刚认真看了一下,是2楼所说的那种方法。你看这个微信号跳转的地址:
http://www.weadds.com/weixin/test/regist.html?openid=ov4w-s81j8aowzYTBO42J5cmkJa8@259
看见了吧,那个openid就是你关注微信号时获取的,以及你的头像、昵称等信息
b821025551b
2015-03-17 17:55:01 +08:00
@benter 如果不是根据他正常的流程走的话,也就不跳我所说的那个地址,会登录失败的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/177470

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX