IT笔录

IT技术学习笔记和经验记录

第 12/27 页,共 264 篇文章

Node.js 命令(CLI)的使用及命令行选项

Node.js 安装后,会同时提供一个命令行(CLI)工具。通过这个命令行工具,可以运行Node程序。通过它提供的一些命令参数选项,这些参数向内置的调试器,提供了多种脚本执行方式及其它有用的运行选项。 语法格式 使用示例 选项参数 -v, --version -h, --help -e, --eval "scri...
阅读全文 →

Node.js 事件循环(Event Loop)介绍

JavaScript是一种单线程运行但又绝不会阻塞的语言,其实现非阻塞的关键是“事件循环”和“回调机制”。Node.js在JavaScript的基础上实现,同样是单线程运行的语言。在单线程中要解决高并发的问题,就要采用非阻塞、异步编程的方式。简单的说,就是在非常耗时的I/O操作中,采用非阻塞的方式继续执行后续的代码,并且进入事件循环(Event Loop)...
阅读全文 →

Node.js 中有哪些类型的错误

Node.js应用中可能会发生多种类型的错误。如:当出现语法错误或运行时错误时,会触发JavaScript错误;当试图试访问一个不存在或没有访问的文件时,会触发系统错误;除JavaScript错误和系统错误错误外,用户还可以自定义错误。理解Node.js中错误类型,可以帮我们更好的进行错误处理和异常捕获。 错误分类 JavaScript错误与系统错误...
阅读全文 →

Node.js 中实现HTTP文件下载

HTTP实现文件下载时,只要在服务器设置好相关响应头,并使用二进制传输文件数据即可,而客户端(浏览器)会根据响应头接收文件数据。而在Node.js中,设置好响应头后,读取文件流,再使用.pipe()方法将流转接到响应对象Response就可以实现一个简单的文件下载服务器。 文件下载介绍 Node.js文件下载服务器实现 2.1 添加路由 ...
阅读全文 →

Node.js Modules模块系统

Node.js实现了一个简单的模块加载系统。在Node.js中,文件和模块是一一对应的关系,可以理解为一个文件就是一个模块。其模块系统的实现主要依赖于全局对象module,其中实现了exports(导出)、require()(加载)等机制。 模块加载 访问主模块 附:包管理技巧 总体来说… 模块缓存 核心模块 循环依赖 文件模块 文件夹...
阅读全文 →

Node.js HTTP服务器中不依赖第三方模块的文件、图片上传

在HTTP协议中,multipart/form-data格式用于向服务器发送二进制数据,通过这一内容类型(Content-Type)可以实现文件、图片的上传。由于这种格式发送的是二进制数据,在服务器端接收和处理数据时会与其它内容类型有所有区别。 HTTP协议中的文件上传 1.1 POST上传文件 1.2 HTTP数据提交与服务器数据解析 ...
阅读全文 →

Node.js&Express.js HTTP应用超时设置

Node.js创建的HTTP服务器,其对于每个客户端请求的默认连接时长是2分钟(120秒)。如果在这个时间内,服务器没有发送响应信息(response),客户端的连接就会被重置。时间过长的请求响应会造成极差的用户体验,而且会造成IO的阻塞,对于单线程运行的Node.js应用来说,这种影响简直是灾难性的。合理的设置应用的超时时间非常重要。 Node....
阅读全文 →

Node.js Buffer与JavaScript TypeArray类型数组的异同

在ECMAScript 2015(ES6)推出TypeArray标准之前,JavaScript语言处理二进制数据非常困难,这在后端开发中使用很不方便。Node.js中的Buffer类就是为了解决二进制数据处理的问题,该类为Node.js带来了如TCP流操作和文件系统流操作的能力。ECMAScript 2015中TypeArray做为语言标准被引入,使Jav...
阅读全文 →

Node.js C/C++插件(Addons)

Node.js插件(Addons)是C/C++编写的动态链接对象,这些对象可以被Node.js的require()函数引用,并可以像普通的Node.js模块一样使用。Addons主要用于提供一个Node.js中运行的JavaScript和C/C++库之间的接口。 Addons 1.1 概述 1.2 Node.js依赖链接 ...
阅读全文 →

MySQL 自定义函数和存储过程的使用

MySQL支持自定义函数和存储过程,创建函数和存储过程分别使用CREATE PROCEDURE和CREATE FUNCTION,两者在语法结构上比较相似,但是它们的使用方法及使用场景有所有不同。 存储过程 1.1 语法结构 1.2 存储过程的使用 函数 2.1 语法结构 2.2 自定义函数的使用 2....
阅读全文 →