
Node
文章平均质量分 63
. . . . .
越努力越幸运!
展开
-
JWT(json web token)
参考链接:JWT。原创 2023-08-13 19:11:09 · 144 阅读 · 0 评论 -
egg.js企业级web框架
三者皆为node.js web框架,原创 2023-08-12 16:36:49 · 1003 阅读 · 0 评论 -
网络和邮件库:定时收发邮件,减少手动操作
邮件原创 2023-02-21 09:45:19 · 125 阅读 · 0 评论 -
puppeteer
puppeteer原创 2023-02-21 09:23:12 · 131 阅读 · 0 评论 -
node编程常用方法
node之glob模块原创 2022-07-06 16:11:50 · 2939 阅读 · 0 评论 -
npm 和 npx 有什么区别?
npx 主要用于命令行的寻址等辅助功能上,而 npm 是管理依赖的。举几个常见的场景:1. 全局命令,免安装好处就是避免安装全局命令,以及对于命令开发者来说,可以减少碎片化问题。$ npx @vue/cli -V# 等价于$ npm install @vue/cli -g$ vue -V2. 本地 bin 寻址我们知道,如果一个包配置了 bin后,当它被安装的时候,在项目的 node_modules/.bin下就会有相应的指令,方便执行。如常见的执行单元测试,我们可以看到 moch原创 2022-05-01 15:10:37 · 905 阅读 · 0 评论 -
npm run 命令解析与node_modules .bin下的文件解析
npm run 命令解析在vue和react项目中,我们常常用到npm run dev命令来起本地服务,那么npm run dev到底做了什么?package.json文件中的字段script的每一个属性都是一个自定义的脚本命令,npm run 其实执行了package.json中的script脚本下面的例子,我们以vue-cli3脚手架搭建的项目为例说明,所以当我们输入命令npm run serve命令,底层相当执行vue-cli-service serve --port 8055命令// pac转载 2022-05-01 14:52:02 · 1784 阅读 · 0 评论 -
npm start 和 npm run start的关系以及npm run start传递参数
npm start和 npm run start是等效关系。在一个npm管理项目中,一般默认有start的定义,且会经常使用,所以就在npm执行中通过npm start简化了npm run start的写法,类似的还有npm stop、npm test等等。而其他的一些不太通用的命令项则只能通过npm run <命令项>的形式执行。npm start 传递参数与直接node xx.js 传递参数的区别:在执行node xx.js 命令时,如果想传递参数,node xx.js --a --原创 2022-03-24 11:24:41 · 9520 阅读 · 2 评论 -
Node 之 process模块
1. 模块概览process是node的全局模块,作用比较直观。可以通过它来获得node进程相关的信息,比如运行node程序时的命令行参数。或者设置进程相关信息,比如设置环境变量。2. 环境变量:process.env3. 获取命令行参数:process.argvprocess.argv返回一个数组,数组元素分别如下:元素1:node元素2:可执行文件的绝对路径元素x:其他,比如参数等// print process.argvprocess.argv.forEach(function(原创 2022-03-23 22:33:32 · 1471 阅读 · 0 评论 -
ES6模块和CommonJS模块有哪些差异?
ES6ES6模块是引用,重新赋值会编译报错,不能修改其变量的指针指向,但可以改变内部属性的值;ES6模块中的值属于动态只读引用。对于只读来说,即不允许修改引入变量的值,import的变量是只读的,不论是基本数据类型还是复杂数据类型。当模块遇到import命令时,就会生成一个只读引用。等到脚本真正执行时,再根据这个只读引用,到被加载的那个模块里面去取值。对于动态来说,原始值发生变化,import加载的值也会发生变化。不论是基本数据类型还是复杂数据类型。循环加载时,ES6模块是动态引用。只要两个模块原创 2022-03-21 17:39:56 · 198 阅读 · 0 评论 -
对模块化的深入理解
要想知道exports和module.exports的区别,我们先来看一下CommonJS规范。1. 概述Node 应用由模块组成,采用 CommonJS 模块规范。每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。// example.jsvar x = 5;var addX = function (value) { return value + x;};上面代码中,变量x和函数addX,是当前文件example.js私有的,其他原创 2022-01-03 18:55:20 · 761 阅读 · 0 评论 -
设置npm源的几种方式
原始源# the original sourcehttps://registry.npmjs.org/改变原始源方案1: 使用nrm安装npm install -g nrm列出源的候选项nrm ls输出结果:* npm -------- https://registry.npmjs.org/ yarn ------- https://registry.yarnpkg.com/ cnpm ------- http://r.cnpmjs.org/ taobao -----原创 2021-12-20 16:55:35 · 1225 阅读 · 0 评论 -
npm install策略
npm install 和 npm ci一. npm installnpm install 更新策略:执行npm install的时候,会先比较package.json和package-lock.json,如果package-lock.json里面的版本符合package.json的要求,那么就会安装package-lock.json的版本;那么,这个内容是从哪里来的呢?答案是优先从.npmrc里来,即缓存里。同时安装缓存文件里的版本更新package-lock.json;如果不符合,那么就会安原创 2021-12-09 22:02:36 · 4415 阅读 · 0 评论 -
Chrome/Edge 91版本SameSite by default cookies被移除后的解决方案
转载自:Chrome/Edge 91版本SameSite by default cookies被移除后的解决方案转载 2021-11-01 18:24:24 · 1003 阅读 · 0 评论 -
node搭建https服务
在 Node.js 中开启一个 HTTP 服务很简单,如果想使用 Node.js 开启一个 HTTPS 的服务需要两步:一是生成签名证书,二是还需借助 Node.js 提供的系统模块 HTTPS 完成。一. 自签名证书通常在企业中面向公网使用的证书通常是由全球权威 CA 机构签发的证书,受各大浏览器厂商信任。在开发测试时为了简单点我们可以自签名证书,但是这在浏览器中打开时会有安全问题提示。使用 openssl 工具生成自签名证书。简单分为以下几个步骤:使用 openssl 的 genrsa 命令原创 2021-11-01 18:04:15 · 2269 阅读 · 0 评论 -
node 在控制台打印有色彩的输出
在学习 node 过程中,因为没有找到有断点的调试方法,只能退而次之,在控制台打印调试。但整个控制台的输出都是一种颜色,有时候很难找到自己需要的信息,这时,有颜色的打印就会帮上很大的忙。console.log('\x1B[36m%s\x1B[0m', info); //cyan console.log('\x1B[33m%s\x1b[0m:', path); //yellow var styles = { 'bold' : ['\x1B[1m', '\x1B[转载 2021-10-28 15:53:12 · 1147 阅读 · 0 评论 -
http通信协议
当使用 response.setHeader() 设置响应头时,则与传给 response.writeHead() 的任何响应头合并,且 response.writeHead() 的优先,即response.setHeader() 一定要放在response.writeHead() 的前面。HTTP Cookie header 中set-cookie格式请求头及响应头Node设置响应头的方式跨域问题导致设置 cookie 不生效跨域设置cookienodejs 跨域设置cookieChrom原创 2021-10-25 00:10:31 · 351 阅读 · 0 评论 -
fs模块汇总
在node中,所有文件的读取第一个参数都是error,即fs.readdir('path', (error, data) => { console.log('data', data')});fs.readdir 和 fs.readFile这两个方法为异步,所以需要传入回调函数,在回调函数里获取结果。fs.readdirSync 和 fs.readFileSync这两个方法因为为同步的,所以不需要传入回调函数,会把读取后的结果返回回来。...............原创 2021-07-12 21:22:02 · 1281 阅读 · 0 评论 -
Node.js中path模块的resolve()和join()以及relative()方法的区别
resolve和join都用来进行路径片段的连接,但是区别有两点:resolve会生成绝对路径,而join只是返回当前连接的路径。resolve会以最后出现的 ‘/’为起点,作为根路径,忽略前面的片段,而join不会。举例如下:resolveconsole.log(path.resolve()) // returns /workspace/democonsole.log(path.resolve('')) // returns /workspace/democons原创 2021-06-20 17:40:36 · 2302 阅读 · 0 评论 -
理解webpack之process.env.NODE_ENV详解
在node中,有全局变量process表示的是当前的node进程。process.env包含着关于系统环境的信息。但是process.env中并不存在NODE_ENV这个东西。NODE_ENV是用户一个自定义的变量,在webpack中它的用途是判断生产环境或开发环境的依据的。为了查看 process的基本信息,我们可以在文件夹中 新建一个 process.js 文件,在里面加一句代码:console.log(process);然后进入该文件夹,执行 node process.js 可以在命令行中打印如下信转载 2021-01-18 23:42:48 · 874 阅读 · 0 评论 -
npm及.npmrc文件
npm作为node开发过程中的必备工具,长期使用之后,您可能会想:这些全局安装的node包都放在硬盘里面的哪个地方?配置文件.npmrc文件在哪里?node包的缓存位置在哪里?本文讲述npm相关的这些配置信息。如果您需要深入理解node相关的代码逻辑,本篇内容就是你需要的基础知识教程。1. 如何快捷修改.npmrc配置文件?.npmrc文件,就是npm的配置文件。当然,寻找这个文件的目的,多数是为了修改.npmrc文件内容。但npm提供了方便快捷的修改方式,不知道这个文件的位置,其实也是可以修改的。命令原创 2020-11-15 14:09:57 · 9047 阅读 · 0 评论 -
npm link使用与npm create 命令
一. 功能在本地开发npm模块的时候,我们可以使用npm link命令,将npm 模块链接到对应的运行项目中去,方便地对模块进行调试和测试。二. 使用方法1. 在模块中创建链接有两个项目,一个是bee-ui(基本组件库),是我们要开发的基础模块,另一个是要运行模块的项目camera-store-mobile首先,进入我们的bee-ui,执行npm linkcd bee-uinpm link执行命令后,bee-ui会根据package.json上的配置,被链接到全局,路径是{prefix}/原创 2020-11-11 16:45:23 · 998 阅读 · 1 评论 -
npm install package-lock.json 的更新策略
npm lockfiles为什么需要 lockfiles?npm install 的输入是 package.json,它的输出是一棵 node_modules 树。理想情况下,npm install 应该像纯函数一样工作,对于同一个 package.json 总是生成完全相同的 node_modules 树。在某些情况下,确实如此。但在其他很多情况中,npm 无法做到这一点。有以下原因:不同版本的 npm 的安装算法不同。某些依赖项自上次安装以来,可能已发布了新版本,因此将根据 package.转载 2020-07-06 21:56:35 · 3407 阅读 · 0 评论 -
Node读写文件和通过promise处理异步
一. 在之前的node版本中读写文件可以通过fs模块的readFile() 和 readFileSync()方法。其中,readFile()为异步读取,readFileSync()为同步读取。sync 同步async 异步下面举例说明两种操作先结论:异步读取文件的时候由操作系统在后台进行读取,不会阻碍下面的代码执行。同步读取的时候会阻碍下面的代码执行。test.jsvar fs = require('fs'); //获取fs模块console.log('sta原创 2020-05-14 16:24:46 · 2432 阅读 · 1 评论 -
npm常报警告
vulnerabilities 缺陷;脆弱点;audited 审计的;moderate 稳健的;温和的;原创 2020-05-06 14:31:01 · 628 阅读 · 0 评论 -
Node.js中package.json中库的版本号详解(^和~区别)
当我们查看package.json中已安装的包的时候,会发现他们的版本号之前都会加一个符号,有的是插入符号^,有的是波浪符号~。那么他们到底有什么区别呢?先贴一个例子,对照例子来做解释:"dependencies": { "bluebird": "^3.3.4", "body-parser": "~1.15.2"}bluebird的版本号:^3.3.4body-parse的版本号:~...原创 2020-04-15 20:59:20 · 907 阅读 · 0 评论 -
peerDependencies WARNING问题剖析
peerDependencies是npm一个比较早的概念,以前一直没有注意过,因为它主要是跟插件的开发相关,直到最近负责做一些插件开发,才接触到这个东西。我们对dependencies和devDependencies应该都很熟悉了,但是除了它们两个以外,package.json里还可以配置一个叫peerDependencies的配置。那么这个peerDependencies配置有啥作用呢?下面...原创 2020-04-15 19:52:29 · 7407 阅读 · 1 评论