一个慌里慌张的中午

哈,今天终于想起来我还有个博客了! http://fanjinlong.com/2016/04/28/%E4%B8%80%E4%B8%AA%E6%85%8C%E9%87%8C%E6%85%8C%E5%BC%A0%E7%9A%84%E4%B8%AD%E5%8D%88/ 

上午11点46岁,我正在神游中午和媳妇出去吃什么。同事跑来说他账号底下负责的用户不能排重要级别,提示权限不够。当时我是懵比的,毕竟快吃饭了,脑子里想的都是韭菜鸡蛋饺子。一看时间离12点还一会,想着搞定了就走!(国旗已立)
嗯,权限不够。容我瞧瞧代码——确实不够祝辞_<;侨缥伊⒙硐氲搅肆礁鼋饩霭旆ā?/p>

1。自己账户底下的用户讲道理是可以随意改动的,这块权限加的不合适的。那就需要删掉这个控制语句,然后打包上传重新部署;
2。权限不够我就加!也就是数据库里一个更新的事情,还不用重新部署
我这么勤快的人,当然要选第二种了!”毕竟那家东北菜馆的饺子真是好吃。于是哗哗哗连上mongodb, db.xxx.update ({“xxx”:“xxx”},{$设置:{“卧室权限”:“xxx”}});
嗯,权限那块的字符串太长了,容我复制个别人的.ctrl-c/v大法好。敲下回车,打开系统,输入用户密码验证。“用户名密码错误”. .五体投地…
怎么可能!我又没改密码,刚刚只是没看清权限的字段名、更新错了一个,不过我立马就改回来了啊.wtf !眼看着时间马上就12点了。本来只是权限不够而已,这下倒好,连系统都进不去了。怎么办,冥冥中感觉饺子要离我而去了。
先解决问题吧,登录不上去,就重置一下密码。注册邮箱是同事的,这么丢人的事我怎么可能让他知道。先把数据库里的邮箱改成我的……重置,输入密码,“用户不存在“诶? ? ?我一脸懵比。
难道是我改错库了?不可能啊,线上库就一个地址。在配置文件里看也没错。难道我把刚那条数据误删了?重新查了好多遍,没错啊,这条数据老老实实的躺在那。此时我是崩溃的,时间已经到12点15了,媳妇打电话问我咋还没到。我已经预感到危机了。
怎么办,这活计果然急不得啊,早知道当初按方案一来,现在妥妥的在菜馆吃饺子了。没办法,打日志吧。重置密码的邮件传了一个随机数验证的令牌参数和同事的id,我把DBCorsur根据id查到的打出来看看,一个一个对比参数。怎么就能返回零了呢。
这么一看,问题就暴露了。我明明更新的时候数据类型是int,怎么日志打出来就是浮动了呢?而程序里解析都是这么来的:int xxx=Integer.parseInt (object.get (“xxx”) .toString () .trim());查出来的是浮动,用int转换,还所有的参数都包在一个尝试里面,
怪不得返回的是null。查了半天,才知道壳的js语法数值类型都是浮点型的,所以如果要修改数值型数据,直接修改的话长类型可以用NumberLong(),而int用NumberInt()改的话,要是值一样mongodb是不会给你修改的. .被这个坑真是坑的莫名其妙。
终于能登录了,改了那个捣乱的参数以后,密码也不用重置了。郁闷的找到那个控制权限的地方,ctrl - d啪啪删掉。打包上传重新部署.over……
那么这个故事告诉了我几个道理呢? 1。国旗不能乱立2。解决方案简单的说不定坑多3。以后中午来活了就下午再动手(也可以引申到放假前不加新功能……除非你想加班)4。耽误了的时间就得从别的地方补回来,比如我就在大太阳底下一路跑到了饭店。


一个慌里慌张的中午