做一个“空”的朋友圈信息
今天在朋友圈看到朋友发了一个东西,然后好奇心马上驱使我想知道WHY?在获取了做法后立刻做了一个朋友圈测试,效果如下。
不知道大家看懂了没有?
云层在自己的朋友圈发了一个空的内容,要知道这个是不能的吧。(什么你不知道怎么朋友圈只发文字不发图片?长按朋友圈右上角的拍照按钮即可)
你的认知是(不就是加空格么)
这是放了2个空格的情况,右上角的发表按钮是灰的,所以无解!
解谜时间
接着来借花献佛说一下实现方法,在上面的情况下按返回键,系统会提示是否保存编辑。
想什么想点保留啊
接着见证奇迹的时候来了,重复再来一次“朋友圈长按发文本”
是不是发现按钮绿了?想什么想直接点发表啊。
竞猜阶段
云层的朋友圈谁会先意识到这个BUG呢。。
揭晓答案
当当当当,当然是云嫂先发现了这个问题,还有某人以为是我被灰度了,果然是被云思聪看中的女人,赶快撒一波狗粮。。。
问题分析
首先注意,这个方法在安卓可以,但是IOS不行,IOS要通过发语音然后利用转换时间差的方法来实现。(简单来说就是趁服务器不注意,呲溜一下点出去)
这就是传说中的(Biu、Biu、Biu)
为什么会出现这样的情况呢,简单来说就是在安卓客户端会有个文本内容的检查规则(可能是正则表达式,对于空格是识别过滤的),但是当选择了退出保存编辑内容的时候,在客户端上存了一个空串字符串(String message="")!接着重新进入朋友圈分享,自然默认是可以发送状态!检查规则是在文本框中做了keypress的操作后才会触发检查规则,检查规则影响发表按钮。这时候点击发送,空字符串被发送给了服务器。
而IOS端的检查触发时序不同,应该IOS会先检查一下默认文本框的值,再允许用户进行操作。
好吧,其实就是,微信的内容发送校验在客户端不在服务器端,然后安卓端和IOS端只要绕过客户端检查规则就可以发送空内容(可能是服务器校验代价太大了吧)!
作为一个测试一定要记住不要相信客户端的过滤规则!
想清楚前后时序,不要让ATM取假钱的历史重现!
什么,ATM的BUG你又不知道?
好吧,再写一段!
正常的取钱过程
1.插卡
2.输入密码
3.输入取款金额
4.取款
5.退卡
特殊的取钱过程
1.插卡
2.输入密码
3.输入取款金额
4.用不明物体替换真钱
5.等待系统把钱吃回去
6.退卡
希望大家意识到问题,这也是为什么现在都是存取款机,并且所有的不取退回钱单独存放并且吃卡要本人去柜台才能取卡!千万不要尝试这个过程!!!!!
为了让大家晚上睡不踏实,老师留个作业
精益技术 赋能过程