
NodeJS
cellinlab
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
重学Node 0x4 MiddleWare
中间件自定义中间件// logger.jsfunction log(req, res, next) { console.log('Logging...') next()}module.exports = log// index.js//...const logger = require('./logger')//...app.use(logger)内建中...原创 2020-02-07 15:35:42 · 208 阅读 · 0 评论 -
重学Node 0x3 RESTful Services and Express
RESTfulRepresentational State TransferExpress// index.jsconst express = require('express')const app = express()app.get('/', (req, res) => { res.send('Helo Express')})app.liste...原创 2020-02-05 18:34:05 · 177 阅读 · 0 评论 -
重学Node 0x2 NPM
initnpm initInstallnpm install underscoreUsing// index.jsconst _ = require('underscore')// require work// Core module// File or folder// node_modulesconst result = _.contain...原创 2020-02-05 12:44:05 · 176 阅读 · 0 评论 -
重学Node 0x1 Node Modules System(2)
Path Module// app.jsconst path = require('path')const pathObj = path.parse(__filename)console.log(pathObj)OS Module// app.jsconst os = require('os')const totalMemory = os.totalmem()...原创 2020-02-04 13:31:06 · 134 阅读 · 0 评论 -
重学Node 0x0 Node Modules System
moduleconsole.log(module)creating a module//logger.jsconst url = 'http://mylogger.io/log'function log(message) { // send an HTTP request console.log(message)}module.exports.log = lo...原创 2020-02-04 12:24:28 · 144 阅读 · 0 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(6)文章分类编辑
分类编辑 /views/admin/category_index.html{% extends 'layout.html' %}{% block main %}<ol class="breadcrumb"> <li><a href="/">管理首页</a></li> <li&原创 2019-02-22 00:06:43 · 349 阅读 · 0 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(5)后台管理实现
用户列表 /routers/admin.js/** * 用户管理 */router.get('/user',function (req,res) { /** * 从数据库读取所有用户数据 */ User.find().then(function (users) { res.render('admin/user_index',...原创 2019-02-21 22:08:04 · 727 阅读 · 0 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(4)后台框架搭建
登录状态 cookies app.js//加载cookies模块var Cookies = require('cookies');//设置cookieapp.use(function (req,res,next) { req.cookies = new Cookies(req,res); //解析登录用户的cookie信息 req.userI...原创 2019-02-21 18:30:25 · 540 阅读 · 0 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(3)登录注册
用户注册 UserSchema结构设计 数据库安装 参考:MongoDB下载安装 启动服务mongod --dbpath=E:\NodeJS\Blog\db --port=27017 连接数据库 app.js//加载数据库模块var mongoose = require('mongoose');/...//...原创 2019-02-21 15:06:40 · 801 阅读 · 0 评论 -
OpenLayers初体验0x1:使用Node创建OpenLayers应用
项目初始化mkdir new-projectcd new-projectnpm initnpm install olnpm install --save-dev parcel-bundlerJS和HTML//index.jsimport 'ol/ol.css';import {Map ,View} from 'ol';import TileLayer from...原创 2019-01-26 23:18:52 · 2529 阅读 · 3 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(7)内容显示
分类的展示 /routers/main.jsvar express = require('express');var router = express.Router();var Category = require('../models/Category');router.get('/',function (req,res,next) { //读取所有分类 C...原创 2019-02-22 20:23:48 · 348 阅读 · 0 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(8)内容修改
内容修改 /views/admin/content_edit.html{% extends 'layout.html' %}{% block main %}<ol class="breadcrumb"> <li><a href="/">管理首页</a></li> <li&原创 2019-02-22 22:19:52 · 597 阅读 · 0 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(9)内容信息扩展及首页显示
修改文章数据结构 /schemas/contens.jsvar mongoose = require('mongoose');//内容数据结构module.exports = new mongoose.Schema({ //关联字段-分类的id category:{ type:mongoose.Schema.Types.ObjectId, ...原创 2019-02-23 14:03:55 · 289 阅读 · 0 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(10)内容分类及内容详情
分类显示内容 /views/main/layout.html<nav> <div class="menu"> {%if category == ''%} <a href="/" class="focus">首页</a> {%else%} <原创 2019-02-23 14:53:45 · 388 阅读 · 0 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(11)评论
评论 /views/main/view.html{%extends 'layout.html'%}{%block content%} <div class="listBox"> <h1>{{content.title}}</h1> <p class="colDefault"> ...原创 2019-02-23 22:05:24 · 528 阅读 · 1 评论 -
NodeJS实战 利用Express&MongoDB搭建博客 0 索引&源码
详细步骤(1)分析及项目初始化(2)前后端分离(3)登录注册(4)后台框架搭建(5)后台管理实现(6)文章分类编辑(7)内容显示(8)内容修改(9)内容信息扩展及首页显示(10)内容分类及内容详情(11)评论源码NodeJS实战搭建博客_源码...原创 2019-02-23 22:11:45 · 2713 阅读 · 4 评论 -
NodeJS实战 利用Express&MongoDB搭建博客(2)前后端分离
使用模板 后端逻辑和页面表现分离——前后端分离 模板配置/** * app.js * 应用程序启动文件 *///加载express模块var express = require('express');//加载模板处理模块var swig = require('swig');/** * 首页 * req request对象 * res respon...原创 2019-02-21 09:59:19 · 1246 阅读 · 1 评论 -
NodeJS入门 0xD Node的Web开发 Express
Express 是非常流行的 Web 框架,以前是在 Connect 的基础上搭建的。尽管提供了一些基本的功能,比如静态文件服务、 URL 路由和程序配置等,但它依然是极简的 Web 框架。 Express 提供的结构足以让我们把可重用的代码组装起来,但又不会限制开发实践。 生成程序框架 Express 对程序结构不作要求,路由可以放在多个文件中,公共资源文件也可以放到...原创 2019-01-20 19:16:37 · 171 阅读 · 0 评论 -
NodeJS入门 0xC Node的Web开发 深入了解Connect
创建 Connect 程序$ npm install connect@3.4.0//server.jsconst app = require('connect')();app.use((req,res,next)=>{ res.end('Hello ,Connect!');});app.listen(3000);了解 Connect 中间件的工作机制 ...原创 2019-01-20 12:01:46 · 146 阅读 · 0 评论 -
NodeJS入门 0x1 阿里云部署Node.js项目(CentOS)
root用户连接实例部署NodeJS环境 1.wget命令下载Node.js安装包。该安装包是编译好的文件,解压之后,在bin文件夹中就已存在node和npm,无需重复编译。# wget https://nodejs.org/dist/v10.14.2/node-v10.14.2-linux-x64.tar.xz 2.解压文件# tar xvf nod...原创 2018-12-21 23:40:44 · 226 阅读 · 0 评论 -
NodeJS入门 0x4 NodeWeb程序(1)Node Web 程序的结构
目录Node Web 程序的结构 Node Web程序组成 程序代码组成 开始一个新的 Web 程序 添加依赖项 一个简单的服务器 npm 脚本 Node和PHP的区别Node Web 程序的结构 Node Web程序组成package.json—— 一个包含依...原创 2019-01-03 18:33:50 · 277 阅读 · 0 评论 -
NodeJS入门 0x4 异步编程(3)作用域,流程控制
异步开发的难题 在创建异步程序时,你必须密切关注程序的执行流程,并瞪大眼睛盯着程序的状态:事件轮询的条件、程序变量,以及其他随着程序逻辑执行而发生变化的资源。 作用域是如何导致 bug 出现的function asyncFunction(callback) { setTimeout(callback, 200);}let color = 'blue';as...原创 2019-01-02 23:30:12 · 329 阅读 · 0 评论 -
NodeJS入门 0x5 NodeWeb程序(2)搭建一个 RESTful Web 服务
目录搭建一个 RESTful Web 服务 新建项目 添加消息解析器搭建一个 RESTful Web 服务 设计 RESTful 服务时,要想好需要哪些操作,并将它们映射到 Express 里的路由上。就此例而言,需要实现保存文章、获取文章、获取包含所有文章的列表和删除不再需要的文章这几个功能。分别对应下面这些路由:POST /articles——创...原创 2019-01-03 19:48:51 · 214 阅读 · 0 评论 -
NodeJS入门 0x6 NodeWeb程序(3)添加数据库
添加数据库 往 Node 程序中添加数据库而言,并没有一定之规,但一般会涉及下面几个步骤。决定想要用的数据库系统。 在 npm 上看看那些实现了数据库驱动或对象关系映射(ORM)的热门模块。 用 npm --save 将模块添加到项目中。 创建模型,封装数据库访问 API。 把这些模型添加到 Express 路由中。 制作自己的模型 API 文章应...原创 2019-01-07 11:43:05 · 235 阅读 · 0 评论 -
NodeJS入门 0x2 异步编程(1)回调
在 Node 的世界里流行两种响应逻辑管理方式:回调和事件监听。用回调处理一次性事件 回调是一个函数,它被当作参数传给异步函数,用来描述异步操作完成之后要做什么。 这里用一个简单的 HTTP 服务器演示回调的用法,让它实现如下功能: 异步获取存放在 JSON 文件中的文章的标题; 异步获取简单的 HTML 模板; 把那些标...原创 2018-12-24 23:03:57 · 193 阅读 · 0 评论 -
使用npm镜像解决npm安装慢问题
问题描述: 查看原下载源:npm config get registry更新下载源:npm config set registry http://registry.npm.taobao.org原创 2019-01-03 23:11:32 · 543 阅读 · 0 评论 -
NodeJS入门 0x3 异步编程(2)事件监听
用事件发射器处理重复性事件 事件发射器示例 echo 服务器就是一个处理重复性事件的简单例子,当你给它发送数据时,它会把数据发回来。//echo_server.jsconst net = require('net');const server = net.createServer(socket=>{ socket.on('data',data=>{/...原创 2018-12-28 19:10:31 · 316 阅读 · 0 评论 -
NodeJS安装sqlite3报错:node-pre-gyp install --fallback-to-build node-pre-gyp WARN
问题描述:解决方案: 安装Python和vs2015(C++环境)相关资源:Python2.7 32/64位下载地址:pan.baidu.com/s/1dzwRcdoK66FlQ7qHq-FX6Q 密码: hndkVisual Studio2015 32/64位下载地址:pan.baidu.com/s/1sSOy_hKugeQGFoyaCrcCRw 密码: a6...原创 2019-01-04 22:06:20 · 10145 阅读 · 5 评论 -
NodeJS入门 0x7 NodeWeb程序(4)添加用户界面
添加用户界面 给 Express 项目添加界面需要做几件事。首先是使用模板引擎。程序还需要服务静态文件,比如 CSS。在渲染模板和编写 CSS之前,还需要了解,如何在必要时让前面例子中的路由处理器同时支持 JSON 和 HTML 响应。 支持多种格式 Express 的 res.format 方法app.get('/articles',(req,r...原创 2019-01-07 13:08:12 · 276 阅读 · 0 评论 -
NodeJS入门 0x8 Node的Web开发(1)前端构建系统
前端构建系统 用 npm 运行脚本 Node 有 npm,而 npm 能运行脚本。在项目的 package.json 文件中,有个 scripts 属性,可以在那里指定自己的 npm start 命令:{ ... "scripts": { "start": "node server.js" }, ...} 我们一般都会定义 test 属性,因...原创 2019-01-08 00:05:31 · 223 阅读 · 0 评论 -
NodeJS入门 0x9 Node的Web开发(2)服务器端框架(1)
框架是什么LoopBack 项目用了如下定义。 API 框架——用于搭建 Web API 的库,有协助组织程序结构的框架支持。 LoopBack 将自己定义为这类框架。 HTTP 服务器库——所有基于 Express 的项目都可以归为这一类,包括 Koa 和 Kraken.js。这些库帮我们围绕 HTTP 动词和路由搭建程序。 HTTP 服务器框架——用来搭建模块化 ...原创 2019-01-19 19:09:10 · 182 阅读 · 0 评论 -
Node.js:request&cheerio爬虫获取免费代理
1.初始化项目 在之前的基础上进行故不需要重新安装依赖,具体参考初始化项目。2.动态 userAgent 每次爬取的时候从中随机选取一个//./src/userAgent.jsconst userAgents = [ 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.12) Gecko/20070731 Ub...原创 2019-01-09 01:31:18 · 606 阅读 · 0 评论 -
NodeJS入门 0xA Node的Web开发(2)服务器端框架(2)
hapi hapi 是个服务器框架,它的重点是 Web API 的开发。 hapi 有自己的插件 API,完全没有客户端支持,也没有数据模型层。 hapi 有路由 API 和它自己的 HTTP 服务器封装。在 hapi 中设计 API,要把服务器当作主抽象。从 DevOps 的观点来看, hapi 自带的连接和日志功能使得它易于扩展和管理。 设置 创建项目 ...原创 2019-01-19 23:22:29 · 200 阅读 · 0 评论 -
NodeJS入门 0xB Node的Web开发(2)服务器端框架(3)
DerbyJS DerbyJS 是全栈框架,支持数据同步和视图的服务器端渲染。它用到了 MongoDB 和 Redis,数据同步层是由 ShareJS 提供的,支持冲突的自动解析。 设置 运行 DerbyJS 的例子需要安装 MongoDB 和 Redis。要快速创建新的 DerbyJS 项目,需要安装 derby 和 derby-starter。mkd...原创 2019-01-20 10:31:29 · 357 阅读 · 0 评论 -
NodeJS入门 0x0 Node简介、环境搭建(Win)
目录JavaScript JavaScript运行环境: 浏览器中的JavaScript可以做什么? 浏览器中的JavaScript不可以做什么? JavaScript只能运行在浏览器吗?Node 什么Node? Node和JS关系 Node的实现环境搭建 NVM工具的使用JavaScript ...原创 2018-12-21 17:13:21 · 411 阅读 · 0 评论