微信是在本地开个服务器吗?

2015-09-24 17:52:30 +08:00
 Quaintjade

顺丰小哥给我个二维码下载 APP ,我用没装微信的手机无法打开,而装了微信的手机用浏览器也能直接打开。
这是怎么实现的?是微信在本地开个服务器吗?

(以下是下载页链接,不是含推广的原始链接)
https://m.sf-pay.com/sfpay-openapi/inviteFriends?appOther=

3002 次点击
所在节点    微信
11 条回复
abelyao
2015-09-24 17:56:01 +08:00
到底是打开 APP 还是打开链接…?
没装微信的手机打不开顺丰的 APP …?
装了微信的手机用浏览器能打开 APP …?
qiayue
2015-09-24 17:58:42 +08:00
退一万步来说,真是微信开了服务器,顺丰也用不了啊
Tink
2015-09-24 18:00:19 +08:00
这跟微信有啥关系
expkzb
2015-09-24 18:01:24 +08:00
你拿装了微信的那个手机,把微信删掉,看看你的推理成立么
honeycomb
2015-09-24 18:13:07 +08:00
这是有可能的,因为微信有可能在本地开了端口,而浏览器页面上的代码可以访问本机回环地址的这个端口
zeayes
2015-09-24 18:15:07 +08:00
二维码就是把一个地址按一定算法生成的一张图片而已,这个算法是可逆的,没服务器啥事啊。
Quaintjade
2015-09-24 22:32:48 +08:00
@abelyao
@qiayue
是打开下载页,不是打开 app ,我没说清楚。。。

@Tink
我的意思是没装微信打不开下载页面

@expkzb
wp 手机,聊天记录还没备份,不敢删。。。

@honeycomb
大概是吧,不过和一般 404 页的样子不太一样,不知道是为什么

@zeayes
那个二维码就是一个网页 url ,我一开始只是奇怪为什么我一个手机打不开,另一个手机用微信可以打开,同时用手机上的浏览器也可以打开
beordle
2015-09-25 01:22:45 +08:00
网页里有 js js 会检测 wechat://foobar 是否可以访问 不可以就伪装一个 404 页面 这是微信通过系统 api 注册的一个协议 在 android 上叫什么就要客户端开发回答一下了
Quaintjade
2015-09-25 09:37:15 +08:00
@beordle
但我在浏览器 F12 开发者工具里看了一下,没看到 js 啊,直接返回了这个 404 页面,不知道是从哪里调用 wechat:// 的?
这个 404 页确实是伪装的,因为返回的 HTTP 状态是 200 。
beordle
2015-09-25 18:27:23 +08:00
@Quaintjade 这个不确定了 可能是必须要移动设备的 header 服务器那边才返回对应的 html 吧 至少上述思路是事实可行的一种 我用手机回答 也懒得分析了哈
Quaintjade
2015-09-25 21:38:24 +08:00
@beordle
试过模拟那个手机的 user agent ,依然 404 。看 header 也没看出有哪里可以区别……

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

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

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

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

© 2021 V2EX