随笔分类 -  NODE入门

摘要:multer是常用的Express文件上传中间件。服务端如何获取文件上传的进度,是使用的过程中,很常见的一个问题。这里整理出来,有同样疑问的同学可以参考一下。文章主要介绍如何利用progress-stream获取文件上传进度,以及该组件使用过程中的注意事项。 阅读全文
posted @ 2018-02-05 08:39 程序猿小卡 阅读(6104) 评论(1) 推荐(4) 编辑
摘要:cookie-parser是Express的中间件,用来实现cookie的解析。不少人在使用过程中遇到问题,一般都是因为对cookie-parser的签名、验证机制不了解导致的。本文深入讲解cookie-parser的签名和验证机制,以及cookie签名是如何增强网站的安全性的。 阅读全文
posted @ 2018-02-01 08:34 程序猿小卡 阅读(17198) 评论(2) 推荐(2) 编辑
摘要:刚回答了SegmentFault上一个兄弟提的问题《非对称解密出错》。这个属于Node.js在安全上的应用,遇到同样问题的人应该不少,基于回答的问题,这里简单总结下。 非对称加密的理论知识,可以参考笔者前面的文章《NODEJS进阶:CRYPTO模块之理论篇》。 完整的代码可以在 《Nodejs学习笔记》 找到,也欢迎大家关注 程序猿小卡的GitHub。 阅读全文
posted @ 2018-01-29 08:29 程序猿小卡 阅读(8444) 评论(2) 推荐(2) 编辑
摘要:在信息安全重要性日益凸显的今天,作为一名开发者,需要加强对安全的认识,并通过技术手段增强服务的安全性。 crypto模块是nodejs的核心模块之一,它提供了安全相关的功能,如摘要运算、加密、电子签名等。很多初学者对着长长的API列表,不知如何上手,因此它背后涉及了大量安全领域的知识。 本文重点讲解API背后的理论知识,主要包括如下内容:摘要、对称加密、非对称加密、电子签名等。 阅读全文
posted @ 2018-01-03 08:03 程序猿小卡 阅读(10717) 评论(5) 推荐(4) 编辑
摘要:在web服务端开发中,字符的编解码几乎每天都要打交道。编解码一旦处理不当,就会出现令人头疼的乱码问题。 不少从事node服务端开发的同学,由于对字符编码码相关知识了解不足,遇到问题时,经常会一筹莫展,花大量的时间在排查、解决问题。 文本先对字符编解码的基础知识进行简单介绍,然后举例说明如何在node中进行编解码,最后是服务端的代码案例。 阅读全文
posted @ 2017-09-04 08:23 程序猿小卡 阅读(16759) 评论(1) 推荐(1) 编辑
摘要:Diffie-Hellman(简称DH)是密钥交换算法之一,它的作用是保证通信双方在非安全的信道中安全地交换密钥。目前DH最重要的应用场景之一,就是在HTTPS的握手阶段,客户端、服务端利用DH算法交换对称密钥。 下面会先简单介绍DH的数理基础,然后举例说明如何在nodejs中使用DH相关的API。 阅读全文
posted @ 2017-08-30 09:14 程序猿小卡 阅读(1769) 评论(0) 推荐(0) 编辑
摘要:Node.js 8.0 在2017年6月份发布,升级的特性中,包含了N-API。N-API并不是对原有node扩展实现方式的替代,它只是提供了一系列底层无关的API,来帮助开发者编写跨版本的node扩展。 阅读全文
posted @ 2017-06-03 13:39 程序猿小卡 阅读(13070) 评论(0) 推荐(1) 编辑
摘要:Buffer是node的核心模块,开发者可以利用它来处理二进制数据,比如文件流的读写、网络请求数据的处理等。 Buffer的API非常多,本文仅挑选 比较常用/容易理解 的API进行讲解,包括Buffer实例的创建、比较、连接、拷贝、查找、遍历、类型转换、截取、编码转换等。 阅读全文
posted @ 2017-05-25 08:38 程序猿小卡 阅读(6257) 评论(1) 推荐(2) 编辑
摘要:nodejs的核心模块,基本上都是stream的的实例,比如process.stdout、http.clientRequest。 对于大部分的nodejs开发者来说,平常并不会直接用到stream模块,只需要了解stream的运行机制即可(非常重要)。 而对于想要实现自定义stream实例的开发者来说,就得好好研究stream的扩展API了,比如gulp的内部实现就大量用到了自定义的stream类型。 阅读全文
posted @ 2017-05-24 09:45 程序猿小卡 阅读(10413) 评论(1) 推荐(4) 编辑
摘要:body-parser 是非常常用的一个express中间件,作用是对post请求的请求体进行解析。本文从简单的例子出发,探究body-parser的内部实现。 阅读全文
posted @ 2017-05-22 08:13 程序猿小卡 阅读(61554) 评论(3) 推荐(10) 编辑
摘要:本文基于express、express-session实现了简易的登录/登出功能,在后续章节将针对express-seesion的实现原理进行深入的探究。完整的代码示例可以在笔者github上找到。 阅读全文
posted @ 2017-04-24 09:05 程序猿小卡 阅读(20779) 评论(1) 推荐(2) 编辑
摘要:MD5(Message-Digest Algorithm)是计算机安全领域广泛使用的散列函数(又称哈希算法、摘要算法),主要用来确保消息的完整和一致性。常见的应用场景有密码保护、下载文件校验等。 本文先对MD5的特点与应用进行简要概述,接着重点介绍MD5在密码保护场景下的应用,最后通过例子对MD5碰撞进行简单介绍。 阅读全文
posted @ 2017-04-23 11:23 程序猿小卡 阅读(57387) 评论(3) 推荐(11) 编辑
摘要:morgan是express默认的日志中间件,也可以脱离express,作为node.js的日志组件单独使用。本文由浅入深,内容主要包括 入门例子、日志分割、写入数据库、源码剖析。 阅读全文
posted @ 2016-12-13 08:56 程序猿小卡 阅读(40604) 评论(8) 推荐(8) 编辑
摘要:本文摘录自个人总结《Nodejs学习笔记》,更多章节及更新,请访问 "github主页地址" 。欢迎加群交流,群号 197339705。 模块概览 在node中,child_process这个模块非常重要。掌握了它,等于在node的世界开启了一扇新的大门。熟悉shell脚本的同学,可以用它来完成很多 阅读全文
posted @ 2016-12-08 11:40 程序猿小卡 阅读(113156) 评论(1) 推荐(16) 编辑
摘要:本文摘录自《Nodejs学习笔记》,更多章节及更新,请访问 "github主页地址" 。欢迎加群交流,群号 197339705。 文章概览 本文基于express、express session实现了简易的登录/登出功能,完整的代码示例可以在 "这里" 找到。 环境初始化 首先,初始化项目 然后,安 阅读全文
posted @ 2016-12-07 11:35 程序猿小卡 阅读(14752) 评论(0) 推荐(1) 编辑
摘要:在网络安全问题日益严峻的今天,网站采用HTTPS是个必然的趋势。本文主要包含两部分,1、通过客户端、服务端的例子,对https模块进行入门讲解。2、如何访问安全证书不受信任的网站。(以 12306 为例子) 阅读全文
posted @ 2016-11-21 08:18 程序猿小卡 阅读(9953) 评论(0) 推荐(0) 编辑
摘要:net模块是同样是nodejs的核心模块。做node服务端编程,net基本是绕不开的一个模块。本文从一个简单的 tcp服务端/客户端 的例子开始讲解,好让读者有个概要的认识。对于初学者,建议把文中的例子本地跑一遍加深理解。 阅读全文
posted @ 2016-11-17 08:10 程序猿小卡 阅读(14717) 评论(0) 推荐(0) 编辑
摘要:今天,在express/node交流群里,有个群友问了个问题:“nodejs读取图片,转成base64,怎么读取呢?” 想了一下,他想问的应该是 怎么样把图片嵌入到网页中去,即如何把图片转成对应的 datauri。 是个不错的问题,而且也是个很常用的功能。快速实现了个简单的demo,这里顺便记录一下。 思路很直观:1、读取图片二进制数据 -> 2、转成base64字符串 -> 3、转成datauri。 阅读全文
posted @ 2016-11-15 20:11 程序猿小卡 阅读(3747) 评论(0) 推荐(1) 编辑
摘要:大多数nodejs开发者都是冲着开发web server的目的选择了nodejs。正如官网所展示的,借助http模块,可以几行代码就搞定一个超迷你的web server。 在nodejs中,http可以说是最核心的模块,同时也是比较复杂的一个模块。上手很简单,但一旦深入学习,不少初学者就会觉得头疼,不知从何入手。 本文先从一个简单的例子出发,引出`http`模块最核心的四个实例。看完本文,应该就能够对http模块有个整体的认识。 阅读全文
posted @ 2016-11-15 09:05 程序猿小卡 阅读(5855) 评论(0) 推荐(2) 编辑
摘要:在nodejs中,path是个使用频率很高,但却让人又爱又恨的模块。部分因为文档说的不够清晰,部分因为接口的平台差异性。 将path的接口按照用途归类,仔细琢磨琢磨,也就没那么费解了。 阅读全文
posted @ 2016-11-14 08:50 程序猿小卡 阅读(35187) 评论(0) 推荐(3) 编辑