博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
node笔记
阅读量:6251 次
发布时间:2019-06-22

本文共 2780 字,大约阅读时间需要 9 分钟。

此笔记由

0.

下载地址:https://nodejs.org/en/download/

下载安装后可能需要重启

node -v / node -- version  查看版本

node            进入node模式(在cmd中运行,REPL(Read Eval Print Loop:交互式解释器) ctrl + c退出

第一个服务器

const http = require("http");http.createServer(function (request,response) {    // 服务器对访问浏览器的响应头    response.writeHead(200, {'Content-Type': 'text/plain'});    // 服务器对访问浏览器的响应数据    response.end('Hi World\n');}).listen(8888);console.log('Server running at http://127.0.0.1:8888/');  //在浏览器访问127.0.0.1:8888

  

 

1.模块

①.node自带:

 (1)http(开启服务): http.createServer() 方法创建服务器; request, response 参数来接收和响应数据

 (2): 像操作window的文件和文件夹,执行增删改查

 (3)event:EventEmitter 的核心就是事件触发与事件监听器功能的封装

 (4)url

②.node需引入

 (1)path

 (2)express

以下几个重要的模块是需要与 express 框架一起安装的

body-parser - node.js 中间件,用于处理 JSON, Raw, Text 和 URL 编码的数据。

cookie-parser - 这就是一个解析Cookie的工具。通过req.cookies可以取到传过来的cookie,并把它们转成对象。

multer - node.js 中间件,用于处理 enctype="multipart/form-data"(设置表单的MIME编码)的表单数据。

 

 2.npm

NPM是随同NodeJS一起安装的包管理工具,常见的使用场景有以下几种:

  允许用户从NPM服务器下载别人编写的第三方包到本地使用。

  允许用户从NPM服务器下载并安装别人编写的命令行程序到本地使用。

  允许用户将自己编写的包或命令行程序上传到NPM服务器供别人使用。

①.npm -v    npm 版本 

②.安装

npm install 模块名      本地安装模块

npm install 模块名 -g    全局安装模块

express@4.13.3 node_modules/express

③.查看

npm list -g        所有全局安装的模块

④.卸载

npm unstall 模块名    卸载模块

npm ls          是否卸载

⑤.更新

npm update 模块名    更新模块

⑥.探索

npm search 模块名    探索有模块名(模糊查询)

⑦.分布

npm publish       分布模块

 

 

 3.回调函数

 4.事件循环

执行异步操作的函数将回调函数作为最后一个参数回调函数接收错误对象作为第一个参数

var fs = require("fs");fs.readFile('input.txt', function (err, data) {   if (err){      console.log(err.stack);      return;   }   console.log(data.toString());});console.log("程序执行完毕");//不存在input.txt就报错

5.

'event'模块:EventEmitter 的核心就是事件触发与事件监听器功能的封装

 ## let event = new require('events').EventEmitter   |   方法:① .on()(监听事情请求)、②.emit()(发送事件请求)  ③.once()   ...

const eventEmitter = require('events').EventEmitter;let event = new eventEmitter();// 服务器监听some_event事件event.on('some_event', function () {    console.log('服务器接收到some_event 事件触发')})// 向服务器发送事件setTimeout(function() {    event.emit('some_event');}, 1000)// 向服务器发送事件(每个1毫秒向服务器发送请求,洪水攻击)setInterval(function() {    event.emit('some_event');},1)

6.Buffer

 buffer:提供二进制缓存区(JS 语言自身只有字符串数据类型,没有二进制数据类型)

 

 

 

 

 

 

cmd模式node不能运行node.js文件不然报错

 

 

 

 


npm init -y        // 初始化项目

 npm "start"                       supervisor node ./bin/www

  bin/www

   app.js           app.set('views','./views');

    

脚手架搭建

npm install express-generator -g       // 全局安装环境

express -h                    //  是否安装express成功

express -e                    //  生成express脚手架(npm install -> npm start -> localhost:3000)

const APP = require('express')();

const ROUTER = require('express').Router();

fs(需要配合url模块)

fs.mkdir           创建目录

fs.rmdir          删除目录

fs.rename         编辑目录

 

fs.open          创建文件 (fs.close)

fs.unlink           删除文件

fs.readdir         查询文件下的所以文件和目录

转载于:https://www.cnblogs.com/lgyong/p/10421749.html

你可能感兴趣的文章
《Python入门》Linux 下 Python Web开发环境搭建笔记
查看>>
[LeetCode] Binary Tree Paths 二叉树路径
查看>>
SAP Client Copy
查看>>
安卓自动生成代码插件-Android code Generator(转)
查看>>
构建一个高可扩展性javabean和jsp连接数据库操作
查看>>
JS魔法堂:Data URI Scheme介绍
查看>>
《c++primer》疑惑记录
查看>>
java的(PO,VO,TO,BO,DAO,POJO)解释
查看>>
SWT:获取字符串实际宽度
查看>>
Device Mapper Multipath(DM-Multipath)
查看>>
Web安全实践(10)攻击weblogic
查看>>
Xcode5.0使用iOS6.1SDK及模拟器
查看>>
如何编写解决方案?
查看>>
引起超时的原因及表解锁的方法<转>
查看>>
微信公众帐号开发教程第2篇-微信公众帐号的类型(普通和会议)(转)
查看>>
Oracle二三事之 EBS升级
查看>>
PC端体验效果最佳epub阅读器——iRead爱读书
查看>>
DataGridView打印类
查看>>
【java】实体类中 Set<对象> 按照对象的某个字段对set排序
查看>>
java基础之:匿名内部类应用例子一
查看>>