手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表分类:Software

记录一次自己被自己坑的过程

众所周知,现在的PHP开发基本上都是前后台+服务器通吃,虽然都是各种三脚猫,但毕竟也算是大半个全栈。

开发网页的时候,最烦的事情就是页面上改个文字,都得cmd+r(F5)刷新一下网页看看效果。前端这两年在这个上面改进了很多。比如npm run watch,其实就是监控文件改动。自动刷新一下页面。别看这个功能不复杂,但其实会浪费很多时间。比如双屏电脑的时候,听起来很方便,一个屏幕写代码,一个屏幕看效果,但你其实试一下就会感觉到累了:代码写好,鼠标移到另一个屏幕,点击一下浏览器,按一下F5,看一下效果。如果不对,回来再试。。。
 
以前都忍了忍,但如果改动多了,其实真不能忍。于是找了browser-sync这个软件,他可以代理你本地的网页,设定好监控的文件,改动后,他就会主动刷新页面(看了一下,就是在页面里嵌入了socket.io组件,一旦有更新,软件主动往ws里发通知,让他执行location.reload 之类的)
 
正常使用的时候都没问题,也自我感觉良好,直到有一天,我POST数据的时候发现了一个奇怪的事情。POST一个JSON数据,一个使用Quill生成的HTML,被我用JSON包了起来的数据。看了一下SQL的LOG,全部提交了两遍。更关键的是,第二次提交的时候。JSON结构还在。但HTML全部没了。。。。这个就太妖异了。
 
一开始我一直以为是自己哪里程序写的有问题,触发了两次或者触发了XSS的保护,但仔细找了一下,也没有发现自己有使用中间件。
 
最后排查browser-sync,因为他是代理访问。类似browser-sync --proxy,那就想了,是不是第一次我提交后,他提交了。然后又提交了一次?毕竟是第三方软件,我也没有深究的想法,直接关闭browser-sync的进程,再测试。果然,一次过。也没有提交两次。。。
 
为了这玩意,我被折腾了2小时。所幸这个小问题影响不大(正常如果只是看页面,几乎完全无影响,后续,我还是准备将页面做成象nova那样。估计会好很多)
 
--EOF--
都说要知其然并知其所以然,但也没有那么多时间来查看,所以就先这样,也许等有时间的时候好好的探究一下,为什么啥都不变,就将我的HTML那一小段给删除了。。

Tags: browser-sync

phpstorm 2019.3 的BUG

PHPStorm 2019.3更新后,感觉都还可以,只是有时候格式化的时候,页面会错位,比如将所有的use 并成了一行。

起初我以为这是设置的问题,但后来发现不是,因为在同一个项目里数百个文件,只有极少的几个出现了这个问题,这就意味着这个文件我不能自动格式化了。于是一点点的排查
1、删除 .idea 目录,重建一下,排查是不是IDE设置的问题
2、将出错的文件COPY出来,重建 同名文件,再粘贴回去(防止有隐藏不可见的代码)
3、尝试将引用的USE进行人工排序,或者只留2个
 
上述方法都试了,结果 都不正常。
直到,突然发现有一个很简单的文件也不正常,于是就盯着这个文件进行测试。比如一行行的删代码,看看到哪里才正常。直到。。。。改了个函数名,一切就都正常了。这是什么回事?原来,我的函数名用了关键字:list。即:public function list(Request $request)...
居然是因为这货吗?于是我又找了几个内容里有 list 方法的文件,尝试格式化一下,果然,use全并到一行了。。。
 
2019.2的时候没有这毛病,到2019.3的时候。。。。居然多了这个
最后,在没有新的补丁出来前,我,将方法名改掉了。。将list改成lists,世界清静了(嗯,其实不太影响,就是路由里也得顺便改一下)

chrome 55之后,网页编码怎么更改?

每次发到这种内容的时候都让我很纠结,那肯定是因为我踩坑了!

说实话,页面不指定编码这事儿让人确实很郁闷,不过现在大多是UTF-8了,所以这样的问题倒还是很少遇到。但很少遇到不代表不会遇到,比如
大小: 158.05 K
尺寸: 500 x 186
浏览: 713 次
点击打开新窗口浏览全图
这是谁?这是京东。。。。
 
好吧,话说回来,从chrome55开始,就不再有切换编码这个功能了,估计google也认为,页面里应该都是指定编码的,问题不大!
但京东这个API,我真心是拿到一堆乱码。所以,我想知道怎么破
当我看到这里的时候,我就知道,问题解决了:https://www.v2ex.com/t/339398,很多人和我有同样的问题,看看其中的内容:
(部分,不全)
  1. 首先来看普通的国内用户,遭遇怎样的伤害:   
  2. [贴吧的哭声]( http://tieba.baidu.com/p/4891458368)   
  3.   
  4. 再来看程序员的愤怒:   
  5. [囧囧囧]( https://bugs.chromium.org/p/chromium/issues/detail?id=597488)   
  6.   
  7. 谷歌这是在倒逼 web 程序员编码规范,各位怎么看?  
  8. 第 1 条附言  ·  86 天前  
  9. 没想到这么多人回复,那还是说点干货吧:  
  10.   
  11. #官方的解释,55版以后默认按chrome UI语言解析,毫无疑问,中文的chrome就按照GBK(有可能GBK2312?)编码了  
最后,建议去安装这个插件:https://chrome.google.com/webstore/detail/set-character-encoding/bpojelgakakmcfmjfilgdlmhefphglae/related,至少我用了它之后,真的是解决了。妈蛋!
 
 

CS1.6 Server的架设

CS是很久以前的游戏了。mac上最小支持的就是1.6.....在steam里能下载到的最小版本也只有1.6。

客户端好找,但是创建一个server就比较麻烦了。所幸gameservermanagers.com真是一个良心网站,就提供了一键创建server包。
1、先加入源,并更新: dpkg --add-architecture i386;  apt-get update;  apt-get install mailutils postfix curl wget file bzip2 gzip unzip bsdmainutils python util-linux tmux lib32gcc1 libstdc++6 libstdc++6:i386
2、创建用户并以该用户登录:adduser csserver  / passwd csserver / su csserver 
3、下载安装包wget https://gameservermanagers.com/dl/csserver ,设置可执行权限 chmod +x csserver
4、执行它:./csserver install
然后就完事了。。。安装完后
./csserver start就能启动了
还有一些命令,如stop/restart/console/details/update/force-update/debug等
更详细 的还是直接看官网吧:https://gameservermanagers.com/lgsm/csserver/
 
看看它support server list。。。吓尿你

PhpStorm中因为JS版本低而提示错误的解决

开发项目的时候,发现:

大小: 33.33 K
尺寸: 500 x 179
浏览: 1163 次
点击打开新窗口浏览全图

这是提示我,当前Javascript版本不支持

打开phpstorm的设置,进行语言和框架设置,选中Javascript,将版本设置为ECMAScript6。

大小: 47.99 K
尺寸: 500 x 113
浏览: 751 次
点击打开新窗口浏览全图
保存一下,再看刚才的文件,提示已经没有了
大小: 49.97 K
尺寸: 500 x 194
浏览: 690 次
点击打开新窗口浏览全图
 
由于以前只是用JS写写常用的东西,也没有注意过。果然使用ECMAScript6。虽然 VSCode什么的也可以,但切换来切换去的,总觉得不方便,而且这个设置只对当前项目有用,就先这么处理吧

Tags: phpstorm

Records:23312345678910»