如何看待淘宝 APP 采用 80 端口传输非 http 协议?

2017-03-20 10:51:24 +08:00
 qianguozheng

我就想问,他们难道不知道有个东西叫 http 代理吗?

https://www.zhihu.com/question/57350923?guide=1

13060 次点击
所在节点    分享发现
82 条回复
hiboshi
2017-03-20 23:35:10 +08:00
我个人觉得走 80 的唯一目的就是防止运营商对端口封锁,很多地区的小运营商针对非 80 , 443 端口进行屏蔽,比如 21 , 22 很多地方长宽、广电都屏蔽了,如果这些还走非 80 的话势必整个 APP 都废了,所以 ali 采用了 80 ,总不至于我网页都不能访问吧,既然用了 80 用了非 HHTP 协议,以 ali 的数据量和 http 报文长度 估计压力什么的很难满足吧!
mhycy
2017-03-20 23:47:40 +08:00
说句不好听的明明是自己技术不过关劫持不做封包分析,为何这口锅要扣在 APP 上面呢?

服务端返回 400 更多的是安全上的迷惑作用, 80 端口按常理是 HTTP 协议应用,但实际上是私有协议。
HTTP 代理做劫持的时候必然需要做双向的封包分析以确定数据流是可处理的。
这点都做不好的话别怪 APP 服务器不支持。

另:劫持形式实现的 HTTP 代理不是正常的 HTTP 代理
jhdxr
2017-03-20 23:57:59 +08:00
1. 用 80 端口(的原因之一)是在部分网络环境下只有 80 端口能用,对, 443 也不行
2. 曾经有过一个串号的故障,经过排查就是某小运营商无视 cookie 针对 get 请求做了缓存, GG

以我个人观点,在被劫持的情况下,提示不可用让用户意识到自己的网络环境可能存在问题也是正当的方案之一。
利益相关:前手淘开发
firefox12
2017-03-21 00:04:49 +08:00
@qianguozheng http 代理和这个有什么关系, app 客户端又没要求走 http 代理。是你们强行把别人的请求走了 80 代理吧
cppgohan
2017-03-21 01:20:04 +08:00
个人理解是为了提高连通率, 有些奇葩的网络环境, 防火墙只给过 80 端口的也是有的.
incompatible
2017-03-21 02:05:43 +08:00
@qianguozheng 哪个业界默认 80 都是 HTTP 协议了?
默认走 HTTP 协议以便你们运营商🐶做劫持?
iyaozhen
2017-03-21 02:19:40 +08:00
@hiboshi
@jhdxr
@cppgohan
赞同,都是被逼的。我们也不想走 80 端口呀。其它端口经常不能使啊
正常服务端会下发几个 ip(一般通过 httpdns),一个 ip 还会有几个端口,客户端会把几个 ip+端口都探测一轮,往往可能就是 80 端口响应最快。当然 80 端口有问题会切换,更近一步服务降级使用 http 协议。当然这是理想情况有时候并不能很好的切换
wavingclear
2017-03-21 04:16:08 +08:00
原来手机支付宝 app 总是掉线是这个原因……
mengzhuo
2017-03-21 09:52:28 +08:00
没毛病,我国的网络搞得我们做游戏的都得用 80 443
skylancer
2017-03-21 10:10:42 +08:00
用 80 是主要考虑到了比如移动这种运营商经常玩劫持而考虑的,我搜了下工单劫持基本都是移动,相当醉
另外端口和业务不一定相关的啊... 这个喷点没意思
skylancer
2017-03-21 10:13:44 +08:00
我搜了下工单,第一页, 42 条记录,从 3 月 12 日到今天
2 条联通劫持记录,剩下的 39 条全是移动

啧啧啧
hslx111
2017-03-21 10:18:44 +08:00
400 是 squid 无法识别请求返回的吧 这锅真心不是淘宝 app 的
zpf124
2017-03-21 10:45:45 +08:00
@qianguozheng 巧了,我反倒是喜欢在 80 上代理 3389 端口,因为只有这样我才不会被各种各样的防火墙网关之类的弄掉。

从来没有过任何一个组织制定过标准规定哪些端口是干什么的,都是协议中约定俗成的,并不代表其他产品不能占用这些端口。
mokeyjay
2017-03-21 10:48:11 +08:00
@iVeego 巧了,我也是
iVeego
2017-03-21 10:59:26 +08:00
@mokeyjay #74 这非常影响体验,不过后来我用曲线救国的方式搞定了。我用了 island 这个软件,一来限制阿里系的后台流氓行为,二来它直接连国内,正好。这是在酷安里面某个评论看到的。用下来体验非常不错。
RqPS6rhmP3Nyn3Tm
2017-03-21 11:51:43 +08:00
http 默认 80 ,不代表 http 当且仅当 port 80
JackWindows
2017-03-21 13:32:13 +08:00
估计楼主没听说过 web socket
qianguozheng
2017-03-21 14:29:05 +08:00
@JackWindows 我还真听说过,而且用过,搭建过,让你失望了
qianguozheng
2017-03-21 14:45:07 +08:00
@mhycy 确实,要是我能解决这个问题,也不会在这里发牢骚了,哈哈。
mhycy
2017-03-21 14:54:42 +08:00
@qianguozheng
Python 写个代理滤一遍~

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

https://yangjunhui.monster/t/348752

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

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

© 2021 V2EX