第一部分 前景提要
一、背景
用Go搭一个小项目, 按传统的套路把开发环境和生产环境配置信息写在配置文件config.json中, 初始化加载配置,解析出数据。看着是解析一个JSON的小事,过程中却发生了3次演进:
1、定义一个配置文件对应的结构体。
2、递归加载配置的全部节点。
3、使用viper
继续阅读
第一部分 前景提要
一、背景
用Go搭一个小项目, 按传统的套路把开发环境和生产环境配置信息写在配置文件config.json中, 初始化加载配置,解析出数据。看着是解析一个JSON的小事,过程中却发生了3次演进:
1、定义一个配置文件对应的结构体。
2、递归加载配置的全部节点。
3、使用viper
继续阅读
一、背景
访问4年前在Go playground上分享的代码片段,都提示Unavailable For Legal Reasons,请求状态码为451。由于内容比较重要,花了一些时间研究原因,最终除了一个特例,其他都找回来。
二、关于HTTP 451
HTTP 451 Unavailable For Legal Reasons, 即因法律原因不可用。当用户请求访问某个经政府审核等查核方法后认定不合法的来源时,就会显示这个错误代码。
继续阅读
一、了解Go包管理的动机
我们知道etcd使用Go实现的,前段时间准备看下etcd源码,结果用go get下载安装etcd源码问题层出不穷,表面的原因是etcd依赖的Go模块有循环依赖,深层次原因还是Go包管理处在混乱及快速演进的过程中。
所以,想阅读调试etcd源码,必须跨过对Go包管理不熟悉这道坎。
不得不先说一句,Go包管理工具真是混乱至极,尤其是用了下Node.js的包管理工具npm(最近项目用到了Node.js, 简单用了用),没有对比就伤害。
继续阅读
用WordPress后台上传图片需要先把图片保存到本地,然后在上传,好费劲(jin),突然想去开发一个粘贴上传功能的插件,转念一想或许早就有了,Google了一下果然有。
继续阅读
一般情况本地不能直接连FTP服务器,需要在登陆了堡垒机的开发机上连,这个时候像Filezilla这类FTP客户端工具就不好用了,去探索才发现了更广阔的空间,ftp命令。
项目中测试环境的配置文件,不能提交,但是每次git status都能看到一堆modify,有没有觉得很烦,哈哈哈哈哈,我们来看看
继续阅读
没有数据分析师,你才会学到的。
一、任务
处理一个文件信息内容,对全部的excel文件,按照size列去重,然后按照size升序,最后输出去重排序后的完整内容。
继续阅读
如果你Mac电脑上同时启动着QQ、钉钉、飞书等,你可能习惯性的按下Command + Shift + A来截图,这个时候可能发生多次截图的现象(如果你没有改过以上IM的默认快捷键)。这种时候Mac自带的截图功能就可以施展拳脚了。
聊下Mac截图用法和特点,还有超级好用的录屏功能
继续阅读