alinode 新手村生存指南

alinode 是阿里云产品 Node.js 性能平台 的前身。
以前是收费项目,2018年初集成到阿里云后就完全免费了,我也是第一时间接入测试并上线使用。
在群里安利了不少小伙伴,但真正使用的不是很多,因为大部分都不知道 node 是怎么跑起来的。
说多了都是泪,所以打算写个简单教程,让小白也可以分分钟上手 alinode 这种神兵利器。

通过 node 打 patch 破解 mac 应用

升级 macos mojove 后,各种蛋疼,一些应用也要重新安装了。
其中 SizeUp 这款工具也失效了,找破解版的时候发现了一篇2016年3月的文章。
照着流程操作,竟然到现在还有用,单字节爆破,简单粗暴的方法,我喜欢。

于是乎写成了 node 模块,方便自己和一些朋友使用。
有钱的支持正版,我这样的穷逼,自己写工具。。

使用 Symbol.match 优化正则匹配

如果想从 'uid: 123' 字符串中匹配出 123 我通常会 'uid: 123'.match(/uid: (\d+)/)[1]
但如果字符串不符合规范,正则会返回 null 导致 [1] 操作报错 Uncaught TypeError: Cannot read property '1' of null
所以我会 ('uid: null'.match(/uid: (\d+)/) || 0)[1] 来防止报错。

但这样很不优雅。

Express async 全局错误处理

之前两篇 Promise 错误处理其实已经描述了大部分场景下的错误捕获问题。
结合 async/await 可以获得很好的开发体验。
express 也可以使用 async/await 来提升开发体验,但必须 try/catch 所有 await 才行。
那么今天的课题就是如何优雅的在 express 中使用 async/await 来提升开发体验。