Node.js
文章平均质量分 71
c.
这个作者很懒,什么都没留下…
展开
-
使用socket.io实现强制踢出其他在线账号
文章目录使用socket.io实现强制踢出其他在线账号Node使用`socket.io`Vue使用`vue-socket.io`参考使用socket.io实现强制踢出其他在线账号因为自己学习写的node项目需要这么一个功能,就是同一个账号只能在一个浏览器登录,如果有多个浏览器登录了同一个账号,那么在登陆的时候就会提示是否踢出其他在线用户,如果点击确认就会强制踢出其他在线账号。这里后端使用到了node.js, 前端使用到了vue。当然我这里只是给出了我自己的一个简单实现,其实无外乎都是推送给前台客户端告诉原创 2022-02-08 17:59:49 · 1500 阅读 · 0 评论 -
Express 路由模块化
我们在使用Express的时候,有可能会在app.js中写入大量的关于路由代码,如下: //安装express //安装ejs //https://docs.mongodb.com/getting-started/node/query/ //图片上传插件的使用 /* 1.npm install multiparty 2...原创 2018-04-05 17:37:19 · 1183 阅读 · 0 评论 -
Node.js 封装操作MongoDB库
以往我们用Node.js操作MongoDB数据库如下:Node.js 查找 MongoDb 数据库集合:MongoClient .connect( dbUrl ,function(err,db){ if(err){ /* 数据库连接失败 */ console .log('数据库连接失败'); return...原创 2018-04-05 16:30:54 · 1513 阅读 · 0 评论 -
Express Session的使用
Express Session的使用Session简单介绍session 是另一种记录客户状态的机制,不同的是 Cookie 保存在客户端浏览器中,而 session 保存在服务器上。Session的用途: session运行在服务器端,当客户端第一次访问服务器时,可以将客户的登录信息保存。 当客户访问其他页面时,可以判断客户的登录状态,做出提示,相当于登录拦截。 sessi...原创 2018-04-04 13:57:27 · 18671 阅读 · 2 评论 -
Express Cookie的使用
Express Cookie的使用Cookie 简介cookie 是存储于访问者的计算机中的变量。可以让我们用同一个浏览器访问同一个域名的时候共享数据。 HTTP 是无状态协议。简单地说,当你浏览了一个页面,然后转到同一个网站的另一个页面,服务器无法认识到这是同一个浏览器在访问同一个网站。每一次的访问,都是没有任何关系的。 Cookie 是一个简单到爆的想法:当访问一个页面的...原创 2018-04-04 12:15:45 · 12142 阅读 · 1 评论 -
Express 获取Get和Post请求的参数
GET 请求的参数在URL中,在原生Node中,需要使用url模块来识别参数字符串。在Express 中,不需要使用url模块了。可以直接使用req.query对象。 POST 请求在 express 中不能直接获得,可以使用 body-parser 模块。使用后,将可以用 req.body 得到参数。但是如果表单中含有文件上传,那么还是需要使用 formidable 模块。 1.安装 ...原创 2018-04-03 22:38:51 · 7324 阅读 · 0 评论 -
Express 中间件
Express 是一个自身功能极简,完全是由路由和中间件构成一个的 web 开发框架:从 本质上来说,一个 Express 应用就是在调用各种中间件。中间件(Middleware) 是一个函数,它可以访问请求对象(request object (req)), 响应对象(response object (res)), 和 web 应用中处理请求-响应循环流程中的中间件,一般被命名为 next 的...原创 2018-04-03 22:38:08 · 279 阅读 · 0 评论 -
利用Express.static托管静态文件
1、如果你的静态资源存放在多个目录下面,你可以多次调用 express.static 中间件。app.use(express.static('public')); 现在,public 目录下面的文件就可以访问了。http://localhost:3000/images/kitten.jpg http://localhost:3000/css/style.css http://lo...原创 2018-04-03 21:35:41 · 801 阅读 · 0 评论 -
Express框架中ejs的安装使用
Express 中 ejs 的安装npm install ejs --save 或者: npm install ejs --save-dev Express 中 ejs 的使用var express = require("express"); var app = express(); app.set("view engine","ejs"); ...原创 2018-04-03 21:34:37 · 2565 阅读 · 0 评论 -
Express框架中的路由
路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET、POST 等) 组成的,涉及到应用如何响应客户端对某个网站节点的访问。简单的路由配置当用 get 请求访问一个网址的时候,做什么事情: app.get("网址",function(req,res){ //.. });当用 post 访问一个网址的时候,做什么事...原创 2018-04-03 21:33:10 · 380 阅读 · 0 评论 -
Node.js Express安装和使用
Express 是一个基于 Node.js 平台,快速、开放、极简的 web 开发框架。 Express 框架是后台的 Node 框架,所以和 jQuery、zepto、yui、bootstrap 都不一个东西。 Express 在后台的受欢迎的程度类似前端的 jQuery,就是企业的事实上的标准。Express 特点Express 是一个基于 Node.js 平台的极简、灵活的 ...原创 2018-04-03 21:31:36 · 257 阅读 · 0 评论 -
Node.js操作MongoDB数据库
引包:npm install mongodb --save-dev / cnpm install mongodb --save-dev 教程网址:https://docs.mongodb.com/getting-started/node/introduction/ https://docs.mongodb.com/getting-started/node/query/...原创 2018-03-27 21:03:27 · 320 阅读 · 0 评论 -
Node.js 封装仿照 express 的路由
我们想要仿照express来封装我们的路由,我们先来看看一个仿照express封装的一个简单路由demo,这有助于我们了解express,然后我们会一步步来实现我们自己的简单express路由。主入口://index.jsvar route = require('./model/http-route.js');var app = route();var http = require('http原创 2017-12-02 21:51:46 · 1123 阅读 · 0 评论 -
Node.js EJS模板引擎
初识 EJS 模块引擎我们学的 EJS 是后台模板,可以把我们数据库和文件读取的数据显示到 Html 页面上面。它 是一个第三方模块,需要通过 npm 安装 https://www.npmjs.com/package/ejs 安装: npm install ejs –save / cnpm install ejs --save Nodejs 中使用: ejs.ren原创 2017-11-26 18:45:12 · 3963 阅读 · 0 评论 -
Node.js WEB服务器静态文件托管
封装静态WEB服务器我的上一篇博文http://blog.csdn.net/cckevincyh/article/details/78637576中讲到了如何创建一个服务器去加载静态文件,现在我们根据之前的代码,我们重新对我们的静态web服务器进行封装。原本我们的主程序中的代码如下://引入http模块var http=require('http');//fs模块var fs = require(原创 2017-11-26 18:04:58 · 1892 阅读 · 0 评论 -
Node.js 事件驱动获取数据
Nodejs的单线程非阻塞I/O事件驱动在 Java、PHP 或者.net 等服务器端语言中,会为每一个客户端连接创建一个新的线程。 而每个线程需要耗费大约 2MB 内存。也就是说,理论上,一个 8GB 内存的服务器可以同时 连接的最大用户数为 4000 个左右。要让 Web 应用程序支持更多的用户,就需要增加服务器 的数量,而 Web 应用程序的硬件成本当然就上升了。 Node.js 不为每个客户原创 2017-11-26 17:35:59 · 442 阅读 · 0 评论 -
Node.js 静态web服务
我们想要通过Node.js去访问静态的页面,比如我们在浏览器输入http://localhost:8001/index.html,然后就返回index.html的信息。那么如何用Node.js实现加载静态的页面呢?现在我们有一个static文件夹,里面包含了静态的页面资源: 首先我们要用Nodejs 创建一个 WEB 服务器//引入http模块var http = require('http')原创 2017-11-26 15:47:35 · 2881 阅读 · 0 评论 -
Nodejs 包与 NPM 第三方模块安装和 package.json 以及 CNPM
包与 NPMNodejs 中除了它自己提供的核心模块外,我们可以自定义模块,也可以使用 第三方的模块。Nodejs 中第三方模块由包组成,可以通过包来对一组具有相互依 赖关系的模块进行统一管理。 完全符合 CommonJs 规范的包目录一般包含如下这些文件。 • package.json :包描述文件。 • bin :用于存放可执行二进制文件的目录。 • lib :用于存放 Jav原创 2017-11-25 20:16:53 · 8526 阅读 · 0 评论 -
Node.js 异步流程控制
Node.js 异步流程控制异步流程控制对象async串行无关联:async.series并行无关联:async.parallel串行有关联:waterfallparallelLimit:parallelLimit函数和parallel类似,但是他多了一个参数limitlimit参数限制任务只能同时并发一定数量,而不是无限制并发首先我们需要安装async模块: 我们来看看同步的情况:f原创 2017-11-10 23:11:50 · 612 阅读 · 0 评论 -
Node.js 参数的接收
Node.js 参数的接收GET方式接收参数login.html<html> <head> </head> <body> 登录界面 <img src= "./showImg"/> <form accept="./login" method="get"> <table align="原创 2017-11-09 22:51:01 · 1677 阅读 · 0 评论 -
Node.js 异常处理
var http = require('http');var url = require('url');var router = require('./router');http.createServer(function(request,response){ if(request.url != '/favicon.ico'){ var pathname = url.p原创 2017-10-26 22:25:09 · 3747 阅读 · 0 评论 -
Node.js 路由改造
下面我们利用之前学习的Node.js路由http://blog.csdn.net/cckevincyh/article/details/78305846和读取文件http://blog.csdn.net/cckevincyh/article/details/78307575和读取图片http://blog.csdn.net/cckevincyh/article/details/78311255,通过原创 2017-10-22 20:27:13 · 281 阅读 · 0 评论 -
Node.js 读取图片
Node.js 读取图片读取图片的时候需要注意response.writeHead()的内容需要改变为:response.writeHead(200,{'Content-Type' : 'image/jpeg'});读取图片的时候,跟读取文件的时候有些不同:var fs = require("fs");module.exports = { readfileSync : function(pat原创 2017-10-22 17:05:10 · 10041 阅读 · 0 评论 -
Node.js 写入文件
Node.js 写入文件var fs = require("fs");module.exports = { writefile : function(path,data,recall){ //异步 fs.writeFile(path,data,function(err){ if(err){ throw err;原创 2017-10-22 12:38:27 · 1789 阅读 · 0 评论 -
Node.js 读取文件
Node.js 读取文件读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync()。 异步的方法函数最后一个参数为回调函数,回调函数的第一个参数包含了错误信息(error)。 建议大家是用异步方法,比起同步,异步方法性能更高,速度更快,而且没有阻塞。以下是同步和异步读取文件的方式:var fs = require("fs");module.exports原创 2017-10-22 00:10:35 · 9306 阅读 · 0 评论 -
Node.js 路由
Node.js 路由我们要为路由提供请求的 URL 和其他需要的 GET 及 POST 参数,随后路由需要根据这些数据来执行相应的代码。 因此,我们需要查看 HTTP 请求,从中提取出请求的 URL 以及 GET/POST 参数。 我们需要的所有数据都会包含在 request 对象中,该对象作为 onRequest() 回调函数的第一个参数传递。但是为了解析这些数据,我们需要额外的 Node.J原创 2017-10-21 19:49:34 · 410 阅读 · 0 评论 -
Node.js queryString模块
queryString模块查询字符串主要由两个方法和内置格式化方法组成,一个是将对象转换为字符串,一个则是相反,将字符串转换为对象. querystring.stringify(obj, [sep], [eq])将JSON对象格式化为查询字符串格式的字符串,默认的分隔符为:“&”和“=”。var querystring = require('querystring');var result = q原创 2017-10-21 19:27:51 · 344 阅读 · 0 评论 -
Node.js url模块
url模块URL各部分说明例如: http://user:pass@host.com:8080/p/a/t/h?query=string#hash 解析后对象字段如下: href: 解析前的完整原始 URL,协议名和主机名已转为小写 例如: ‘http://user:pass@host.com:8080/p/a/t/h?query=string#hash’protocol: 请求协议,原创 2017-10-21 15:18:13 · 347 阅读 · 0 评论 -
Node.js调用模块
Node.js调用模块User.jsfunction User(){ this.id; this.name; this.age; this.enter = function(){ console.log(this.name + " 进入图书馆"); };}module.exports = User;var http = require('ht原创 2017-10-02 23:31:51 · 370 阅读 · 0 评论 -
Node.js调用函数
调用当前js文件的函数var http = require('http');http.createServer(function(req,res){ res.writeHead(200,{'Content-Type' : 'text/html; charset=utf-8'}); if(req.url !== "/favicon.ico"){ res.write('<原创 2017-10-01 13:40:58 · 2483 阅读 · 1 评论 -
Node.js HelloWorld的小细节
var http = require('http');http.createServer(function(req,res){ res.writeHead(200,{'Content-Type' : 'text/html'}); res.write('<h1>Node.js</h1>'); console.log("running..."); res.end('<p>原创 2017-10-01 11:00:40 · 221 阅读 · 0 评论 -
Node.js HTTP 服务器与客户端
HTTP 服务器与客户端Node.js 标准库提供了 http 模块,其中封装了一个高效的 HTTP 服务器和一个简易的 HTTP 客户端。http.Server 是一个基于事件的 HTTP 服务器,它的核心由 Node.js 下层 C++ 部分实现,而接口由 JavaScript 封装,兼顾了高性能与简易性。http.request 则是一个 HTTP 客户端工具,用于向 HTTP 服务器发起请求原创 2017-09-05 21:46:55 · 978 阅读 · 0 评论 -
Node.js Stream流
Node.js StreamStream 是一个抽象接口,Node 中有很多对象实现了这个接口。例如,对http 服务器发起请求的request 对象就是一个 Stream,还有stdout(标准输出)。 Node.js,Stream 有四种流类型:Readable - 可读操作。Writable - 可写操作。Duplex - 可读可写操作.Transform - 操作被写入数据,然后读原创 2017-08-31 22:21:16 · 557 阅读 · 0 评论 -
Node.js Buffers缓存对象
Node.js Buffers缓存对象纯粹的 Javascript 对 Unicode 很友好,但是操作二进制数据就不怎么在行了。处理 TCP 数据流或者文件时,必须要操作二进制数据流。 node 提供了一些方法来创建、操作和接收二进制数据流。 原始的数据保存在 Buffer 类的实例中。Buffer 类似于一个整数数组,不同之处在于它和在 V8内存堆之外分配的 一段内存数据相对应。Buffer 对原创 2017-08-31 21:14:18 · 457 阅读 · 0 评论 -
Node.js 文件系统 fs
文件系统 fsfs 模块是文件操作的封装,它提供了文件的读取、写入、更名、删除、遍历目录、链接等 POSIX 文件系统操作。与其他模块不同的是,fs模块中所有的操作都提供了异步的和同步的两个版本,例如读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync()。我们以几个函数为代表,介绍fs常用的功能,并列出 fs 所有函数 的定义和功能。fs.readFil原创 2017-08-29 23:34:52 · 319 阅读 · 0 评论 -
Node.js事件驱动
事件驱动 eventsevents 是 Node.js 最重要的模块,没有“之一”,原因是 Node.js 本身架构就是事件式 的,而它提供了唯一的接口,所以堪称 Node.js 事件编程的基石。events 模块不仅用于用户代码与 Node.js 下层事件循环的交互,还几乎被所有的模块依赖。 事件发射器events 模块只提供了一个对象: events.EventEmitter。EventEmit原创 2017-08-29 22:25:31 · 488 阅读 · 0 评论 -
Node.js常用工具util
常用工具 utilutil 是一个 Node.js 核心模块,提供常用函数的集合,用于弥补核心 JavaScript 的功能 过于精简的不足。 util.inheritsutil.inherits(constructor, superConstructor)是一个实现对象间原型继承 的函数。JavaScript 的面向对象特性是基于原型的,与常见的基于类的不同。JavaScript 没有 提供对象继原创 2017-08-29 22:20:13 · 322 阅读 · 0 评论 -
Node.js全局对象
全局对象JavaScript 中有一个特殊的对象,称为全局对象(Global Object),它及其所有属性都可 以在程序的任何地方访问,即全局变量。在浏览器 JavaScript 中,通常 window 是全局对象, 而 Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global 对象的属性。全局对象与全局变量global 最根本的作用是作为全局变原创 2017-08-29 21:58:21 · 386 阅读 · 0 评论 -
Node.js模块和包
模块和包模块(Module)和包(Package)是 Node.js 重要的支柱。开发一个具有一定规模的程 序不可能只用一个文件,通常需要把各个功能拆分、封装,然后组合起来,模块正是为了实 现这种方式而诞生的。在浏览器 JavaScript 中,脚本模块的拆分和组合通常使用 HTML 的 script 标签来实现。Node.js 提供了 require 函数来调用其他模块,而且模块都是基于 文件的,原创 2017-08-27 20:09:56 · 1148 阅读 · 0 评论 -
Node.js 异步式 I/O 与事件式编程
异步式 I/O 与事件式编程Node.js 大的特点就是异步式 I/O(或者非阻塞 I/O)与事件紧密结合的编程模式。这 种模式与传统的同步式 I/O 线性的编程思路有很大的不同,因为控制流很大程度上要靠事件 和回调函数来组织,一个逻辑要拆分为若干个单元。 阻塞与线程什么是阻塞(block)呢?线程在执行中如果遇到磁盘读写或网络通信(统称为 I/O 操作), 通常要耗费较长的时间,这时操作系统会剥夺原创 2017-08-27 12:38:06 · 520 阅读 · 0 评论