上一章介绍了如何去创建一个express框架的工程项目,这章介绍一下express框架下的文件和用法解析,上一张我们创建的工程项目结构图如下: models是不属于原工程项目结构,为了实现数据模型后添加的,而node_modules这个文件夹内存放着项目需要的中间件,public是存放静态文件的文件夹,routes顾名思义就是路由解析文件的所在,views就是ejs模板引擎的视图文件,app.js是项目运行的入口存放着全局大量的配置,package.json是加载第三方包的配置文件.下面来一一解…
个人总结:这篇文章讲解了express框架种cookie的使用,需要引用cookie-parser这个包.读完这篇文章需要10分钟. 摘选自网络 文章导读 cookie-parser是Express的中间件,用来实现cookie的解析,是官方脚手架内置的中间件之一. 它的使用非常简单,但在使用过程中偶尔也会遇到问题.一般都是因为对Express + cookie-parser的签名.验证机制不了解导致的. 本文深入讲解Express + cookie-parser的签名和验证的实现机制,以及co…
个人总结:这篇文章讲解了Express框架中日志记录插件morgan的示例.读完这篇文章需要10分钟 摘选自网络 章节概览 morgan是express默认的日志中间件,也可以脱离express,作为node.js的日志组件单独使用.本文由浅入深,内容主要包括: morgan使用入门例子 如何将日志保存到本地文件 核心API使用说明及例子 进阶使用:1.日志分割 2.将日志写入数据库 源码剖析:morgan的日志格式以及预编译 入门例子 首先,初始化项目. npm install express…
个人总结: 这篇文章讲解了express框架中如何使用session,主要用了express-session这个包.更多可以参考npm.js来看,读完这篇文章需要10分钟. 摘选自网络: 文档概览 本文基于express.express-session实现了简易的登录/登出功能,完整的代码示例可以在这里找到. 环境初始化 首先,初始化项目 express -e 然后,安装依赖. npm install 接着,安装session相关的包. npm install --save express-se…
系列教程,上一节教程  express+nodejs快速创建一个项目 在创建一个项目后,views目录下的文件后缀为 .jade . 打开 index.jade,具体内容如下图(忽略 header.jade 和 footer.jade,下面教程会一步步创建) 页面解析出的样子如下图.完全是html标签 一.jade 模板引擎 介绍 模板引擎是一个库,或者一个使用一定的规则或者语言来解释数据并渲染视图的框架.模板引擎处理过的最终结果是一个视图页面,也就是html页面或者用户图形界面GUI.在MVC…
a.安装mongoose库用来链接mongodb数据库 安装mongodb数据库参考mongodb安装 前言(怨言) 本来是想安装mongodb库来链接mongodb的,命令行到nodejs工程目录:npm install mongodb --save 但是发现报gyp ERR! stack Error:Can't find python executable "python"错误,缺少python运行环境. 我晕死,我链接mongodb还需要Python,这不是存心让用户找虐.查到有…
在环境搭建好后,就可以开始动手架设(node驱动)一个简单的web服务器. 首先,nodejs还是用js编写.先来看一段node官网上的实例代码. var http = require('http'); http.createServer(function(req,res){ res.writeHead(200,{'Content-Type':'text/plain'}); res.end('Holle,nodejs'); }).listen(8080,'127.0.0.1'); console…
创建服务器的 server.js 内容. var http = require("http"); // 引用http模块 http.createServer(function(request,response){ // 设置HTTP头 // 参数设置:状态码 状态信息(可选) 解析类型 response.writeHead(200,'Miragefirefox',{'Content-Type': 'text/plain'}); response.write("你好,世界!&q…
请求数据 前台:form.ajax.jsonp 后台:接受请求并返回响应数据     前台<= http协议 =>后台   常用的请求的方式: 1.GET           数据在url中 2.POST         数据不再url中   get方式:通过地址栏来传输     name=value&name1=value1&               作用:分享   post方式:通过head头传输      数据相对安全   form        action=&qu…
一.说一下 每次修改文件,我们都需要重启服务器npm start,很麻烦,所以使用引入nodemon插件,解决这个问题,实现保存文件,即自启动刷新项目 二.直接开码 npm install nodemon -g --save-dev 注释: -g:全局安装nodemon --save-dev:安装到本项目的dev开发环境依赖下 新增nodemon.json文件 nodemon.json代码如下: { "restartable": "rs", "ignore…
Gin-Web框架 1>     首先声明,这个是我自己搭建的纯Gin-Web框架,其中有借鉴学习别的想法和代码.已上传到GitHub上.地址为: https://github.com/weiyunhelong/GinLearn.git 2>     框架的组成部分 3>     编译运行效果 4>     执行的原理 注解:1->进入main.go,初始化路由,以及端口号 2->根据浏览器输入的URL地址,在router路由器中找到对应的路由函数方法 3->根据…
类声明和类表达式 ES6 中的类实际上就是个函数,而且正如函数的定义方式有函数声明和函数表达式两种一样,类的定义方式也有两种,分别是:类声明.类表达式. 类声明 类声明是定义类的一种方式,就像下面这样,使用 class 关键字后跟一个类名(这里是 Ploygon),就可以定义一个类. 'use strict'; class Polygon { constructor(height, width) { this.height = height; this.width = width; } } va…
前篇<Nodejs学习笔记(一)——初识Nodejs>主要介绍了在搭建node环境过程中遇到的小问题以及搭建Eclipse开发Node环境的前提步骤.本篇主要介绍如何在Eclipse中运行并调试nodejs程序. 1.安装Express.Express是目前最稳定.使用最广泛,而且是Node.js官 方推荐的唯一一个 Web 开发框架. 注意:使用npm install -g express以及cnpm install -g express后,虽然看似安装成功,但是输入express -V时,…
目录 前言 新建express项目并自定义路由规则 如何提取页面中的公共部分? 如何提交表单并接收参数? GET 方式 POST 方式 如何字符串加密? 如何使用session? 如何使用cookies? 如何清除session和cookies? 写在之后 前言 前面经过五篇Node.js的学习,基本可以开始动手构建一个网站应用了,先用这一篇了解一些构建网站的知识! 主要是些基础的东西... 如何去创建路由规则.如何去提交表单并接收表单项的值.如何去给密码加密.如何去提取页面公共部分(相当于用户…
前言 前面经过五篇Node.js的学习,基本可以开始动手构建一个网站应用了,先用这一篇了解一些构建网站的知识! 主要是些基础的东西... 如何去创建路由规则.如何去提交表单并接收表单项的值.如何去给密码加密.如何去提取页面公共部分(相当于用户控件和母版页)等等... 下面就一步步开始吧^_^!... 新建express项目并自定义路由规则 1.首先用命令行express+ejs创建一个项目sampleEjsPre cd 工作目录 express -e sampleEjsPre cd sample…
前言:一条线,竖着放,如果做不到精进至深,那就旋转90°,至少也图个幅度宽广. 通俗解释上面的胡言乱语:还没学会爬,就学起走了?! 继上篇<Nodejs学习笔记(二)——Eclipse中运行调试Nodejs>之后,代码编写环境就从Sublime转战到Eclipse下,感觉顺手多了.于是就跟着Scott老师学起了Nodejs建站的课程(推荐大家点进去看看),踏上了未爬先走的路子. 作为一个白里透白的小白来说,今天主要记录下如何用Nodejs搭建一个小小的网站,以及自己对于这种Nodejs建站的运…
源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证保持一个长连接也为推送消息提供 ======这段是一个以前同事给我的JAVA Socket验证机制的例子===========socket通信一般是找不到头这些的,要自定义封装通信消息类如开源框架netty,消息进出都有自定义加密和选择性压缩的socket不想http一样能找到某个方法,他就监听ip…
目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装项目其它需要包 清除冗余文件并重新规划项目目录 配置文件 规划示例路由,并新建相关文件 实现数据访问和业务逻辑相关方法 编写mysql-helper.js 编写数据访问方法 规划业务逻辑返回值 编写业务逻辑 注册 登录 首页 安全退出 写在之后 前言 前面一有写到一篇Node.js+Express构建网站简单示例:http://www.cnblogs.com/zhongweiv/p/nodejs_express_webapp.…
目录 前言&介绍 安装Pomelo 创建项目并启动 创建项目 项目结构说明 启动 测试连接 聊天服务器 新建gate和chat服务器 配置master.json 配置servers.json 配置adminServer.json 解决服务器分配问题 实现gate.gateHandler.queryEntry 实现chat服务器chatRemote.js 实现chat服务器chatHandler.js 实现connector中entryHandler.js 运行 编写web聊天客户端测试 写在之后…
本文转自:https://www.cnblogs.com/zhongweiv/p/nodejs_koa2_webapp.html 目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装项目其它需要包 清除冗余文件并重新规划项目目录 配置文件 规划示例路由,并新建相关文件 实现数据访问和业务逻辑相关方法 编写mysql-helper.js 编写数据访问方法 规划业务逻辑返回值 编写业务逻辑 注册 登录 首页 安全退出 写在之后 前言 前面一有写到一篇Node.js+Express构…
前言&介绍 Pomelo:一个快速.可扩展.Node.js分布式游戏服务器框架 从三四年前接触Node.js开始就接触到了Pomelo,从Pomelo最初的版本到现在,总的来说网易出品还算不错,但是发展不算快:用它做过一些项目和小游戏表现还不错. 用它的主要好处: 1. 入门简单,有比较丰富的文档和示例(虽然现在看版本也比较老了,但是入门没什么问题) 2.分布式多进程且扩展简单(单进程多线程,每个服务器都是一个Node进程,通过配置文件就可以管理集群) 3.可以不去关注底层和网络相关逻辑,聚焦业…
前言 前面一有写到一篇Node.js+Express构建网站简单示例:http://www.cnblogs.com/zhongweiv/p/nodejs_express_webapp.html 这篇还是用以前的例子, 用Node.js+Koa2构建 Koa:   https://github.com/koajs/koa  http://koa.bootcss.com  (中文) Koa就不多介绍了,前面也写过Express,同一个团队打造,前面也过express文章,对比着看,自然可以看出些优点…
前言:回顾前面零零碎碎写的三篇挂着Nodejs学习笔记的文章,着实有点名不副实,当然,这篇可能还是要继续走着离主线越走越远的路子,从简短的介绍什么是Nodejs,到如何寻找一个可以调试的Nodejs IDE再到未爬先走的搭建一个小小的nodejs application,一直都是贯彻“学习笔记”的精神,想到哪写到哪,遇到什么问题就去解决并记录.如果你不幸读到本笔记,还请记住这是一系列形散神不散的学习笔记!!! 好了,每次不扯几句感觉没法开场似的.本篇形散于要穿插如何利用github管理自己的代码…
NodeJS学习笔记之Connect中间件模块(一) http://www.jb51.net/article/60430.htm NodeJS学习笔记之Connect中间件模块(二) http://www.jb51.net/article/60431.htm…
java的class只在需要的时候才内转载入内存,并由java虚拟机的执行引擎来执行,而执行引擎从总的来说主要的执行方式分为四种, 第一种,一次性解释代码,也就是当字节码转载到内存后,每次需要都会重新的解析一次, 第二种,即时解析,也就是转载到内存的字节码会被解析成本地机器码,并缓存起来以提高重用性,但是比较耗内存, 第三种,自适应优化解析,即将java将使用最贫乏的代码编译成本地机器码,而使用不贫乏的则保持字节码不变,一个自适应的优化器可以使得java虚拟机在80%-90%的时间里执行优化过的…
接着上一篇的说. arrow functions 箭头函数 => 更便捷的函数声明 document.getElementById("click_1").onclick = function(){ console.log("say Hi!"); } document.getElementById("click_2").onclick = () => { let a = 1; let b = 2; console.log(a + b);…
目录 muduo学习笔记(二)Reactor关键结构 Reactor简述 什么是Reactor Reactor模型的优缺点 poll简述 poll使用样例 muduo Reactor关键结构 Channel Poller EventLoop Reactor时序图 测试程序-单次触发的定时器 muduo学习笔记(二)Reactor关键结构 Reactor简述 什么是Reactor Reactor是一种基于事件驱动的设计模式,即通过回调机制,我们将事件的接口注册到Reactor上,当事件发生之后,就…
python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码 python的json.dumps方法默认会输出成这种格式"\u535a\u5ba2\u56ed",.要输出中文需要指定ensure_ascii参数为False,如下代码片段:json.dumps({'text':"中文"},ensure_ascii=False,indent=2) import json #导入json格式 if __name__ ==…
python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://github.com/dmajkic/redis/downloads 如redis-2.4.5-win32-win64.zip下载完后将其解压放在自己要放的目录下如果你是32位的话就进32bit的文件夹,64位就进64bit文件夹 文件夹进去后会看到几个文件:redis-benchmark.exe: 性能…
python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的IP地址,快速查询出该IP地址所在的地理信息和地理相关的信息,包括国家.省.市和运营商.2. 用户可以根据自己所在的位置和使用的IP地址更新我们的服务内容.我们的优势:1. 提供国家.省.市.县.运营商全方位信息,信息维度广,格式规范.2. 提供完善的统计分析报表,省准确度超过99.8%,市准确度超…