坑人的移不动

2014-10-08 13:30:54 +08:00
 NSDont
我们在开发移动端App时,使用RESTful风格来构建服务端API,对于一些请求操作参数不符合要求的场景,我们会返回400 Code,如果是权限不足等操作,则是403. 结果,测试下来发现,其他运营商都OK,唯独移动这家,无论2G还是3G还是4G网络,只要第一次请求API资源是非200(例如400),第二次也是非200,那么这第二次以后所有对相同资源地址的请求访问,都会被强制redirect到139.com域名!

不知其他V友在开发移动端应用时有没有遇到这种问题.
4587 次点击
所在节点    Python
26 条回复
icinessz
2014-10-08 13:34:14 +08:00
移动哪个业务?
icinessz
2014-10-08 13:35:46 +08:00
=。。=我理解错了
NSDont
2014-10-08 13:48:36 +08:00
@icinessz (*^__^*) 嘻嘻……
wzzyj8
2014-10-08 14:01:23 +08:00
都有的,联通也会,电信则是很隐蔽的加自己的广告弹窗,没有法律去约束这种劫持行为也就只有任由他们耍流氓。暂时的解决办法只能是自己用SSL保护起来,至少SSL他们暂时不会去动。
est
2014-10-08 14:10:13 +08:00
我也一直在想这个问题,话说兲朝要求所有网站必须首页显示ICP备案号,那如果是纯API网站肿么办?
mengzhuo
2014-10-08 14:18:01 +08:00
@est

我也好奇
反正目前中国AWS的是不管的
istommao
2014-10-08 14:39:33 +08:00
天朝就是流氓辈出啊
NSDont
2014-10-08 14:47:08 +08:00
@wzzyj8 我们现在还只是踩了移动的坑, 我们一开始使用电信宽带的时候, 什么问题都没有, 然后让客户测试的, 报了这个bug(我们这边一直使用电信宽带, 完全无法重现这个bug), 然后折腾了很久, 才发现, 居然是这个结果, 哭了啊.
wzzyj8
2014-10-08 15:18:30 +08:00
@NSDont 电信也是手机才有。。哭啊
leiz
2014-10-08 15:41:13 +08:00
@est 再纯api你也可以挂一个index.html上面用H1写上备案号,有什么问题?
qiayue
2014-10-08 15:45:05 +08:00
所以最好的解决办法是,所有的请求都返回 200 ,表明服务器响应了,然后自己在返回的数据里定义错误情况,而不要使用 HTTP 原生的错误码。
loryyang
2014-10-08 15:56:05 +08:00
奇闻共赏析。。。运营商劫持的问题也存在好久了,就没个人大代表做个提案吗?
xylophone21
2014-10-08 16:03:08 +08:00
@loryyang 程序员的代表是谁?
loryyang
2014-10-08 16:13:28 +08:00
@xylophone21 有几个互联网老总是人大代表吧,其他好像还真没了
jianghu52
2014-10-08 16:18:46 +08:00
其实你要是换个角度看问题,可能心情就好很多。
你看,人家都知道三次返回200就劫持,换句话说,又多了一个表现机会。你们可以自定义200,404,500等错误。甚至可以在错误页面上挂广告,这样的话指不定VP还能多一点呢。这都是移动给指出的明路啊。
mornlight
2014-10-08 16:22:08 +08:00
应该是他们为了节省资源缓存了吧
cst4you
2014-10-08 16:31:53 +08:00
@est
api 返回的东西里出个字段内容是备案号 -_,-
qiayue
2014-10-08 16:32:18 +08:00
@jianghu52 感觉你没仔细看楼主描述的情况
est
2014-10-08 16:46:13 +08:00
@cst4you 按照JSON标准,汉字要写成 \uXXXX 这种的。备案号里面恰好有个 京 什么的开头。
hging
2014-10-08 16:49:48 +08:00
如果你知道长城宽带还硬放广告的话. 你就不会觉得移动坑了. 用着用着 右下角peng的就弹出来个广告. 你想想什么感觉吧.

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

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

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

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

© 2021 V2EX