|
发表于 2016-5-26 23:49:38
|
查看: 2714 |
回复: 0
最近正在开发一个微信公众账号,其中有一项功能是用户发送文字消息给公众号,然后公众号返回图文消息给用户,用户再点击图文消息即可跳转到一个网页链接,在微信的内置浏览器中打开。( _& Q4 P; C5 u8 N+ y
那么问题就来了,这个网页首先涉及到了移动web前端开发,我优先选择了用HTML5+bootstrap组合来实现页面的美观效果,前端其他的任务交给javascript解决(这里我是完全使用原生javascript代码,没有用到任何的框架,因为考虑到手机加载网页的速度本来就慢,而且框架中很多用不到的功能也会随网页一起加载,耗费用户流量)。
6 V0 s+ u, T5 O2 e8 h9 L5 n' b7 a解决方案就来了,代码请查看附件资料。这段代码在Android、iPhone、iPad、PC上都进行了测试,只要不是在微信内部打开网页的,首先就会弹出上面那个警告框,此时后面的页面是空白的,什么都还没加载,当点击警告框的确定按钮之后,最后三行代码将强行关闭当前页面。OK,到这里算是实现了用户原本的意思了,可以简单收工了。1 b/ K, {5 k" J6 D. j3 P
. Z4 q! k) z1 @; o5 s等等,真的可以这样收工了么?你确定不会有其他问题?当然不是,其实这个方法并不会让你高枕无忧,因为对于伪造的UserAgent,还是可以绕过这条限制的,总的来说就是防君子不防小人了,大家懂得。当然,如果哪位朋友有解决这个问题的更好方法,还麻烦在下面评论告知,技术在于相互的分享和交流嘛,呵呵。
+ I6 | r7 I- v/ y5 @6 t
4 Q: a3 p8 q( c' c, J: e4 a& b
5 l$ Z( F# @+ B j: L: ]1 O6 D% \1 H8 ~1 O4 @+ r
& t6 Q7 }8 S! `
( A, _# \, q* }0 L5 h |
|