使用 GitHub OAuth 第三方验证登录

现在很多站点都支持第三方登录功能。 作为一个技术博客,目标受众项是一批程序员,第三方登录的就选中了github。 这篇文章注意是讲一讲如何给自己的博客添加github自动登录功能。 OAuth 2.0 说到第三方登录,不得不提的一个知识点就是 oauth 2.0。 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。 —- 百度百科 这个协议在认证和授权的时候涉及到: 服务提供方,例如 GitHub,GitHub上储存了用户的登录名,Email,昵称,头像等信息 用户...

2 minute read

当我们谈论懒的时候,我们在谈论什么

懒,是推动人类进步的唯一动力 人们因为懒得走路而发明了汽车,因为懒得出门而发明了电话,因为懒得洗衣服而发明了洗衣机,因为懒…… 我们尚不考究这些发明的是不是因为懒。 但是这些发明的确高效的推动了社会的发展,人类的进步。 如果你看过《2001太空漫游 2001: A Space Odyssey (1968)》这部电影,那你一定对下面这张剧照非常熟悉。 剧照中的这只猩猩,是这个星球上第一位拿起一根骨头当做工具的生物。他忘情的捶打地上的残骸,开心至极。最后,他将手中的骨头,奋力的抛向天空中,摄像机的镜头跟随者这根骨头,指向了茫茫太空。 一个新的时代,来临了。 这里我想表达的是,使用工具,勇于尝试,敢于冒险,是进步的基础。 我在工作中如何去偷懒 从计算机语言开始,每一名程序员都为了偷懒而做了很多伟大的事情。...

1 minute read

当我在写一个评论通知功能的时候, 我在想些什么?

最近忙完了公司的事情,在空闲时间,来更新一下自己的博客了。现在博客在我个人博客在自己的努力推广下,终于有了一些访问量(屈指可数),有一些朋友会回复一些文章进行询问和探讨。 由于没什么时间,一直没有完善评论功能,还必须每次登陆后台才能知道有没有新用户的评论。 大部分时间都不能及时回复,回复的话,用户如果不来浏览你的网页,他也不知道,所以就想做一个邮件提醒,告诉用户,有人回复你的评论了,快来我博客看看。 需求分析 总结起来就两个功能 用户评论后,发送邮件通知博主 博主在后台可以回复对应的评论,并且如果评论人填了邮箱,发送通知到评论人 我们来细分一下这两个功能,以及讲一下具体的实现。大家可以想一想,如果是你,你会如何去实现这一简单的功能,有不同的意见,欢迎大家进行交流和探讨。 表修改 新增两个字段, reply_id 和 from_author reply_id 用于记录是回复的哪个评论,...

8 minute read

用 Vue + Audio API 实现的热门小游戏,八分音符

预览地址: https://8.diamondfsd.com/ (谷歌浏览器打开最佳,不支持移动端,不支持IE) 会有麦克风权限申请,需要允许才可以正常玩耍,如果不小心点了禁止,可以在浏览器地址栏的右边,重新点击允许 Github: https://github.com/k55k32/quaver 游戏截图 由来 最近看这个游戏比较火,个人也是比较闲。 今天花了一下午的时间,来完成这个当前比较火的小游戏,八分音符。 看了这个游戏,原理也很简单,我们只需要获得声音,然后把声音转换为数字,最后控制小人移动就可以了。 声音的输入 我们发现这个游戏的原理很简单,就是通过声音来控制小人移动,声音越大,跳得越高。 所以要做这个小游戏,我们就首先要解决的问题就是,如何从浏览器获得声音。这方面的东西,我以前也接触的不多。所以我只能先面向谷歌编程。 最后我搜索到了这篇文章:...

2 minute read

Vue2 + Nodejs + WebSocket 完成你画我猜多人在线游戏

使用 websocket + vue2 即可完成一个很有意思的在线游戏作品。 你画我猜,相信大家对这个游戏都很熟悉。 我用Vue2 + mint-ui + nodejs + websocket 实现了你画我猜这个游戏。 建议移动端打开效果更佳(可扫下方二维码),PC端需要使用谷歌开发者模式,然后使用移动调试工具,才可以正常使用(主要是一些touch事件,pc不支持)。...

1 minute read

Spring MVC 通过切面,实现超灵活的注解式数据校验

这篇文在主要是介绍,如何在 Controller 的方法里面,让校验注解 ( @NotNull @Email @Size...等),对基本类型的数据生效(基本类型 Integer,String,Long等)。 Spring MVC 有什么校验方式? 大家都知道,Spring MVC 默认依赖了 hibernate-validator...

6 minute read

通过 Github-Webhook 实现的轻量级自动化构建Nodejs微服务

我想要实现这样的功能,只要我 push 代码到 github仓库中,那么我的服务器就会自动执行预先写好的脚本。 类似于: 拉取最新代码 更新项目依赖 编译 重启项目 有很多持续集成工具都可以实现这样的功能,可是我的服务器内存小呀,没那么多资源去部署一个持续化集成工具了,只能自己写一个轻量级工具来完成这项工作。 Github Webhooks 详解 我们每个github仓库可以都在 Settings...

4 minute read