文章
全部技术笔记,按发布时间排序。
vscode-go 设置 lint 不强制检查对包公开类型是否注释
vscode-go 插件使用 golint 作为默认代码风格检查工具,而 golint 需要对包公开类型等需要注释说明用途,而且必须以类型名称开头。 所以经常会遇到风格检查下面的错误: 但是对于国内的公司而言,不能只用英语注释吧,或者中英文混杂的注释,如下所示: 代码要定义一个们,所以我需要注释说明这是个门,想想都很滑
在命令行工具中使用代理
Mac 和 Linux 类 Unix 环境下设置代理特别简单,只要在用户家目录下的 .bashrc 或 .bashprofile (ZSH 对应 .zshrc 以及 .zshprofile)设置 httpproxy 和 httpsproxy 环境变量到代理地址即可,如下所示,其中 $url 就是代理地址。 这里我设置了
从随机数到比特币地址
从随机数到私钥 比特币是去中心化的,生成地址更是和传统银行中心化方式不同。 地址不需要中心化组织确认是否有重复,使用者也不需要担心会与别人地址重复,因为地址空间的数量达到 2 256 个,用十进制表示的话,大约是 10 77 ,而可见宇宙被估计只含有 10 80 个原子。更通俗话的讲地址重复的可能性比被陨石砸到的的几率
Nginx 请求连接限制配置
通过 APT 等包管理工具安装的 nginx 默认也安装了请求限制模块 limitreqmodule 和 limitconnmodule ,这两个官方模块可以配置客户端请求和者连接的数量。 那请求和连接有什么区别呢? 对于 HTTP 协议来说,其建立在 TCP 之上,1.0 版本一个 HTTP 请求就会产生一个 TCP
一些常用 github 协作术语
ref: https://medium.freecodecamp.org/what-do-cryptic-github-comments-mean-9c1912bcc0a4
for(const num of list) 为什么可以运行?
JS 在 ES6 加入了 const 关键字,除了加入了其它语言一样的常量特性,不仅没有 var 的变量提升,还有块级作用域特性。 常量是不可变的,在 ES6 中指的是常量存储地址的不变性,而不是常量的不可变。所以在 const arr = [];arr.push(1) 是可以运行的。 了解这个之后,我们再看看 for
Markdown 实现代码 diff 效果
如下图所示,github 提供了代码提交记录的 diff 效果,其实在 markdown里面也可以轻松实现。 代码块的语法类型为patch,在删除行加上 -,在新增行加上 +。 更新: 看到 web3.js 上用的语法类型是 diff ,和上面的 patch 差不多。
[Linux]在终端下输入密码时显示星号提示符
在使用 sudo 命令的时候会要求我们输入密码,但是这个密码并没有任何反馈,比如下面这个例子。 ~$ sudo apt update [sudo] password for root: 下面简单修改 sudo 的配置文件就可以类似在浏览器表单中输入密码一样显示 的字样。 大功告成!
Chrome 已经原生支持截图功能,还可以给节点截图
昨天Chrome62稳定版释出,除了常规修复各种安全问题外,还增加很多功能上的支持,比如说今天要介绍的强大的截图功能。 直接截图 打开开发者工具页面,选择左上角的元素选择按钮(Inspect) Windows 下按住 Ctrl,Mac 就按住 Command,然后在页面拖动选择区域即可。 Chrome会自动使用下载方式
express 路由模块化
使用 express.Router 类来创建可安装的模块化路由处理程序。Router 实例是完整的中间件和路由系统;因此,常常将其称为“微型应用程序”。 以下示例将路由器创建为模块,在其中装入中间件,定义一些路由,然后安装在主应用程序的路径中。 在应用程序目录中创建名为 birds.js 的路由器文件,其中包含以下内容