ES2015入门系列1-初识ES2015

EcmaScript 其实是一种语言规范,常见的 JavaScript, ActionScript 等都是其具体实现,平时使用中一般可以将其和Javascript对等称呼,本系列教程主要讲述 EcmaScript2015(ES6) 为JavaScript带来的新的特性,并初步掌握如何利用其进行开发。

本系列面向有一定基础知识的ES5使用者,不适合初学者。

先来看两段代码:

Human.js

1
2
3
export default class Human {

}

查看全文

Hexo插件之Hexo-UUID

在我之前的博客搬迁纪录中,提到:

Hexo 每次 generate 后 post._id 会变化,导致和多说关联无效,评论无法显示

我的解决方法是给每篇文章手动增加了uuid属性,手动 不符合程序猿懒的个性,不如写个插件了。

有朋友也许会问为什么不用 permanent link 或者 创建时间戳 等作为关联媒介,我想这2个对于我来说都可能不是一直不变的,所以我更倾向于一个我不会去改变的属性,😄。

废话不多说,开始写代码,看完一遍 Hexo API 文档后,可以从 Hexo创建文章后的事件这里入手,Hexo创建文章后会触发new事件,同时携带文章的结构体作为参数:

查看全文

caddy服务器初识

今天给大家介绍一个不一样的服务器软件, 基于Go语言编写的Caddy

The HTTP/2 web server with automatic HTTPS

宣传语很有意思,两个关键词: HTTP/2automatic HTTPS

  • HTTP/2

    这是在去年正式发布的新一代 HTTP 协议,是由 SPDY 协议演变而来的,SPDY完成其使命之后,Chrome也已经宣布停止支持该协议,未来无疑就是HTTP/2的天下了, 它的好处很多,感兴趣的可以参考:

  • automatic HTTPS

    自动https部署,在其背后是Caddy自动帮我们在Let’s Encrypt 帮我们完成证书的申请并自动应用起来。Let’s Encrypt 证书申请部署虽然不是很复杂,但这种简易的自动化操作带来的方便感还是不言而喻的,大家可以对比下Nginx下部署的过程,参考 JerryQu的文章

当然Caddy还支持很多功能:

查看全文

博客搬迁记录

近期将博客从 vultr VPS迁移到阿里云,并使用 Hexo 替代原来的 Typecho 程序。

虽然阿里云备案体验做的很好了,但是还是不得不大声的说一句:

备案太坑爹啦 !!!

言归正传:

  • Hexo 替换 Typecho, Typecho 中也是使用 Markdown 书写,迁移过来很简单,日志十来篇就复制粘贴喽
  • 服务器弃了 Nginx, 用了更好玩的 Caddy,主要看中其 Automatic HTTPS 的功能
  • 恢复 多说, 并将之前的评论和新的URL一一对应
  • 多说 中部分的资源并不是https, 所以直接 block掉了,还是喜欢绿🔒!
  • 对默认的样式进行了小幅修改

查看全文

Redis 复制一个KEY的值到另外一个KEY

1
2
3
4
5
6
7
8
9
redis 127.0.0.1:6379> set src.key XXX
OK
redis 127.0.0.1:6379> get src.key
"XXX"
redis 127.0.0.1:6379> SCRIPT LOAD "redis.call('SET', KEYS[2], redis.call('GET', KEYS[1])); return 1;"
"1119c244463dce1ac3a19cdd4fda744e15e02cab"
redis 127.0.0.1:6379> EVALSHA 1119c244463dce1ac3a19cdd4fda744e15e02cab 2 src.key target.key
(integer) 1
redis 127.0.0.1:6379> get target.key