WRITING LOG · 03
技术博客
记录技术实践、问题排查和持续成长,把每一次解决问题的过程留下来。
WORKSPACE
文章阅读
php关于MD5==判断问题
2024-04-29
php是一门弱类型语言,很多时候不用特地考虑各种类型的转换比较省心,但是也有糟心的时候。"0"==0是相等的,返回ture2-"1aaa"==1返回truenull==[]也是相等的,返回true但是自动预判类型并且自动转换也有不好的地方:"0e1234"=="0e5678"也返回true,什么鬼,原来是字符串有0e开头后面跟数字的话就会被转化为数字0!那么md5的时候如果出现了类似的值如果用==判断就GG了:md5("QNKCDZO")的结果为"0e830400451993494058024219903391"md5("240610708")的结果为"0e462097431906509019562988736854"md5("QNKCDZO")==md5("240610708")的结果是true!sha1自然也是如此的,所以遇到要比较md5或者sha1值的时候还是都用===比较好,一定要牢记!
disown 如何让正在执行的命令进入后台执行
2024-04-25
有些脚本执行时间比较长需要在后台执行,但执行脚本的时候如果忘了用nohup把命令挂到后台且不想中断当前只在执行的命令该怎么办?这时候就需要用到disown命令了,操作如下:1.快捷键Ctrl+z把正在执行的命令暂停挂到后台。2.输入bg让命令变成后台命令。3.输入disown断开与当前终端的联系。需要注意的是第一步正在执行的命令会暂停(不会中断)直到第二步才会恢复运行,如果命令不能有暂停行为的话这种方法不适用。
linux下如何快速开启一个临时的web服务
2024-04-23
有些场景需要临时开个web服务用来下载文件或者浏览文本。如果像我一样从web开发入门当的程序员可能首先想到的是搭建Apache或者nginx,配置php或者Python相关语言的web环境,这样显然太麻烦了。其实快捷搭建web临时服务的方法很多,windows自带IIS服务直接菜单栏搜索IIS服务开启就行,这里主要讲linux:#Python版python -m http.server 8080#php版php -S 0.0.0.0:8080#nc版##构造header和body(header和body之间必须有空行)echo -e "HTTP/1.1 200 OK \n\n <h1>hello?</h1>" > tmp.htmlwhile true; do nc -l 8080 -q 1 < tmp.htmldone#nc版文件下载(没有下载完成状态提示)##开启下载服务nc -l 8080 < 要下载的文件##nc接收nc 服务的ip 8080 > 要保存的文件名
axios传参遇到的数值类型问题
2024-04-17
最近在写一个管理后台的时候遇到传参问题:api接口总是报数值类型的错误,查了下我表单的参数确实是数字类型传的,payload荷载里面取值也没有问题。以前长期都用php写api,因为PHP是弱类型语言并没有什么问题,这次的后端api是lua脚本写的。排查了一番发现自己封装的axios请求方法里面传参header用的x-www-form-urlencode表单,请求参数都用qs.stringify()处理过了,也就是aaa=111&ccc=222这种数据,然后api把所有数值都被解析成了字符型。查到原因后果断换成了json数据格式传参,问题解决!