【node.js】知识点总结
一、概念 Node.js 不是语言、不是库、不是框架; Node.js 是 JavaScript 的运行环境,可以解析、执行 JavaScript 代码; 使 JavaScript 可以脱离浏览器来运行; 二、组成部分1、浏览器中 JavaScript: ECMAScript DOM BOM 2、Node.js 中 JavaScript: ECMAScript 没有 DOM、BOM 为 JavaScript 提供了一些服务器级别的操作 API: 文件读写 网络服务的构建 网络通信 http 服务器等。。。 三、特点 事件驱动 非阻塞 IO 模型(异步) 轻量和高效 构建于 chrome 的 V8 引擎 之上 四、用途 web 后台服务器 命令行工具 五、主要知识点 B/S 编程模型 模块化编程 Node 常用 API 异步编程 Express 开发框架 Ecmascript 6 六、安装使用 官网下载:稳定版(LTS)、最新体验版(Current);(重复下载会升级覆盖) 命令行检查:node --version/node -v; 对应目录...
理解 OAuth 2.0
本文转载自理解OAuth 2.0 一、应用场景为了理解 OAuth 的适用场合,让我举一个假设的例子。 有一个 “云冲印” 的网站,可以将用户储存在 Google 的照片,冲印出来。用户为了使用该服务,必须让 “云冲印” 读取自己储存在 Google 上的照片。 问题是只有得到用户的授权,Google 才会同意 “云冲印” 读取这些照片。那么,”云冲印” 怎样获得用户的授权呢? 传统方法是,用户将自己的 Google 用户名和密码,告诉 “云冲印”,后者就可以读取用户的照片了。这样的做法有以下几个严重的缺点。 (1)”云冲印” 为了后续的服务,会保存用户的密码,这样很不安全。 (2)Google 不得不部署密码登录,而我们知道,单纯的密码登录并不安全。 (3)”云冲印” 拥有了获取用户储存在 Google 所有资料的权力,用户没法限制 “云冲印” 获得授权的范围和有效期。 (4)用户只有修改密码,才能收回赋予 “云冲印” 的权力。但是这样做,会使得其他所有获得用户授权的第三方应用程序全部失效。 (5)只要有一个第三方应用程序被破解,就会导致用户密码泄漏,以及所有被密码保护...
node 里 exports 的用法
本文转自CSDN 共享变量 共享方法 共享构造 共享类 exports 可以共享方法、变量、构造、类。exports 的本质是一个数组,访问域是共有的。 123//打印一下exportsconsole.log(exports);//结果是一个空数组 共享变量exportDemo.js(被引用的) 123456789//打印一下exportsconsole.log(exports);//结果是一个空数组 //共享变量var aa=123;exports.aa=aa;//打印的结果是一个键值对关系的数组{aa:123}console.log(exports); exportsUse.js(引用方) 12345//导入被引用的js文件var exportsDemo=require("./exportsDemo.js"); //直接调用aa,这里的aa对应的是exports对应的keyconsole.log(exportsDemo.aa); 共享方法exportDemo.js(被引用的) 12345678910111213141516...
srstem
system();函数名: system功能 :发出一个DOS命令用法 :int system(char *command);备注 :system函数已经被收录在标准c库中,可以直接调用 用法例:
GDB使用指南
调试编译命令: g++ 文件名 -o 编译生成文件名 调试命令: g++ 文件名 -o 编译生成文件名 -g 输入调试命令后打开调试:gdb 运行程序名 {(gdb中命令) l ;列出代码 b :设置断点(后跟行数) d :清除断点 (后加断点编号) r :运行 p :打印(后加变量) i :查看信息(后可加多种东西,如:i b 可查看断点) c :继续 quit :退出 }
优雅的在Windows中调试C++程序
开始:一:搭建环境:按 Windows + R 打开运行 ,输入 cmd 即可打开 cmd进入 cmd 命令提示行,输入再回车即可使用调试:PATH=Dev-Cpp 安装路径\Dev-Cpp\MinGW64\bin;%PATH% 当然,这是一次性的方法,不是很方便,可以直接在系统属性的环境变量中加入路径详见: 1. 如何在 win10 中设置环境变量 2.怎么在 CMD 下直接运行 G++编译源代码二:cmd 的使用(简单的) 123456789cmd(打开) exit(关闭)cd{后加 1.\文件夹名 2. ..(后退一个文件夹) 3.文件名(前进打开文件)}type 打印dir 列出del 删除 该文原地址:https://blog.csdn.net/qq_45718756/article/details/103102160本人已换博客,原地址弃用。
调试 NOI Linux 中的调试
[TOC] 开始搭建环境:可直接在电脑上装NOI Linux 或 下载 虚拟机(虚拟机推荐VM虽然要钱但有密钥,网上一大堆自己搜去。。。) 终端的使用:打开你的终端:Ctrl+Alt+T即可打开终端模拟器,来与shell 来一把紧张刺激的交互吧~ 常用Linux 命令:(注意:Tab键可以自动补全,请多按,省时间!) echo [msg]:直接输出一段信息. cat:输出一个文件的内容 touch:新建一个文件 cd:切换目录 g++:编译你的代码 例: g++ HellowWorld.cpp (这里注意g++后加空格) 执行程序:./helloworld 执行当前目录下的helloworld 文件。(这里注意 ./ 后请不要加空格) 总结Linux 的路径:从/ 开始的路径。相对路径当前目录:**.**父目录:**..** 调试技巧:常见错误 段错误:爆栈、访问非法内存。12解决: ulimit -s 2444444 这里随便加一个大数 (注意:指令只对当前终端有效) 浮点数例外:整型除以0 或模0。1234用#d...
string
原文链接 http://citycowboy.blog.sohu.com/50058804.html做了一定整理和改动 前言 之所以抛弃 char*的字符串而选用 C++标准程序库中的 string 类,是因为他和前者比较起来,不必担心内存是否足够、字符串长度等等,而且作为一个泛型类出现,他集成的操作函数足以完成我们大多数情况下(甚至是 100%)的需要。我们可以用 = 进行赋值操作,== 进行比较,+ 做串联(是不是很简单?)。我们可以把它看成是 C++的基本数据类型。C++中对于 strinig 的定义为:typedef basic_string string; 也就是说 C++中的 string 类是一个泛型类,由模板而实例化的一个标准类,本质上不是一个标准数据类型。 正文[toc]好了,进入正题………首先,为了在我们的程序中使用 string 类型,我们必须包含头文件 。如下: 12#include<string> //注意这里不是 string.h string.h 是 C 字符串头文件using namespace std...
HMCL进行多版本的Mod管理
https://www.mcbbs.net/thread-944728-1-1.html?msclkid=a5eed8e6ce8d11ecb07219e3c9bb3d5e 玩我的世界经常要同时开好几个版本,比如我就同时玩有1.18.2,1.16.5,1.12.2三个版本,每个版本都有不同的模组,如果要手动切换(换版本就改文件夹)的话会非常麻烦有什么好的管理方法吗?
WorldEdit 教程
[toc] WorldEdit 使用教程 原文地址 mineplugin.org 命令选择选区WorldEdit 的一个最基本的部分是使用选区进行的操作。举个例子,如果你想把一个方形区域内的草方块换成泥土,你需要告诉 WorldEdit 这个方形区域的位置。 WorldEdit 提供了多种选择一个要进行修改的选区的命令,这个部分将会向你介绍选择选区和你可以对选区进行的操作。 选择长方体WorldEdit 允许你以选择长方体的两个角上的点的方式来选择长方体(想象一个 3D 的长方体)。 下方的图展示了如何用两点形成一个长方体。你选择的长方体必须与地图对齐(他们不能被以一个角度旋转)。 有许多方法可以用来选择这两个点,你可以混合使用这些方法。 选择你的当前位置(//pos1、//pos2) //pos1 [x,y,z] //pos2 [x,y,z] 使用这些命令(空参数时)可以将你所站的方块上方一个方块的位置分别设定为第一个和第二个角。或添加参数指定坐标,选取指定坐标点。 一般使用法杖可以完成大部分...