node.js
文章平均质量分 57
youyudehexie
这个作者很懒,什么都没留下…
展开
-
详解Node.js API系列 Crypto加密模块(1)
MD5加密算法算法简介MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由Mit Laboratory for Computer Science和Rsa data security inc的Ronald l. rivest开发出来,经md2、md3和md4发展而来。它的作用是让大容量信息在用数字签名软件签署私人密匙前被“压缩”成一种保原创 2013-09-26 10:32:45 · 26479 阅读 · 1 评论 -
node.js的myql模块封装
一切都是为了方便地使用node.js操作mysql,根据日常经常使用的操作和各种坑,针对node.js的mysql模块进行二次封装,分享出来,希望你们喜欢。安装git clone https://github.com/youyudehexie/mysqlmid.gitnpm install例子 require('coffee-script'); var原创 2013-06-22 12:48:27 · 2116 阅读 · 1 评论 -
node.js redis缓存中间件
var redis = require('redis');var client = redis.createClient();var cache = {}cache.getKey = function(key, callback){ client.get(key, callback);};cache.setKey = function(key, val, callback){原创 2013-06-18 23:49:47 · 3996 阅读 · 0 评论 -
解决win7的64位 mongoose 安装问题,bson
错误日志安装bson的时候出现错误。添加环境变量pathc:\windows\system32 to my PATH.http://stackoverflow.com/questions/14100027/cant-install-js-bson/14130182#14130182原创 2013-06-01 21:14:02 · 3035 阅读 · 0 评论 -
node.js 计划任务模块
npm install cronvar cronJob = require('cron').CronJob;new cronJob('* * * * * *', function(){ console.log('You will see this message every second');}, null, true, "America/Los_Angeles");原创 2013-05-25 23:20:23 · 4598 阅读 · 0 评论 -
node.js导航网站
本人的新站,希望多支持http://nodejs.whattoc.com/原创 2013-04-23 14:47:49 · 1316 阅读 · 0 评论 -
node.js下express的AJAX通讯:jsonp,json
1.创建环境#cmd express2.修改代码app.js/** * Module dependencies. */var express = require('express') , routes = require('./routes') , user = require('./routes/user') , http = require('h原创 2013-03-24 12:36:45 · 13077 阅读 · 2 评论 -
Pomelo聊天室源码分析(一)
Pomelo 0.2node.js 0.8由于0.3版本的不稳定,不想花时间到兼容性升级上,等等稍微稳定一下再升级,接下来的分析都是基于这个版本源码进行分析开篇前,先引用pomelo的wiki:https://github.com/NetEase/pomelo/wiki/tutorial1--%E5%88%86%E5%B8%83%E5%BC%8F%E8%81%8A%E5%A4%A9原创 2013-04-10 12:00:13 · 4752 阅读 · 1 评论 -
pomelo启动流程图
Pomelo组件职责简介master: master组件主要负责启动master服务器。monitor: monitor组件主要负责启动各个服务器的monitor服务,该服务负责收集服务器的信息并定期向master进行消息推送,保持master与各个服务器的心跳连接。proxy: proxy组件主要负责生成服务器rpc客户端,由于系统中存在多个服务器进程,不同服务器进程之间相互通信需要通过原创 2013-03-25 22:38:04 · 2944 阅读 · 0 评论 -
pomelo源码分析(六)
Server.prototype.start = function(cb) { registerDefaultModules(this.app); //注册默认模块 loadModules(this.app, this.masterConsole); //执行模块 var self = this; this.masterConsole.st原创 2013-03-23 13:05:39 · 3160 阅读 · 0 评论 -
node.js 模拟登录新浪微博
gitpage:https://github.com/youyudehexie/sinaloginSinaloginNode.js微博模拟登录UsageNode.js编写的模拟方式登录新浪微博Quick Startnpm install sinaloginorgit clone https://github.com/youyudehex原创 2013-07-04 19:32:20 · 6793 阅读 · 2 评论 -
Lordofpomelo游戏分析
游戏体验在线地址部署游戏lord of pomelo安装指南分析思路游戏服务器的流程除了启动部分外,大部分事件和流程都是并发的,如果按照一个流程去描述这样一件事情,会很混乱,所以我会根据自己对代码的理解,分开不同用户模块,不同业务去分析Lordofpomelo的代码。Lordofpomelo 服务器介绍各类服务器介绍Lor原创 2013-07-23 12:04:47 · 14160 阅读 · 5 评论 -
Node.js下自定义错误类型
Node.js下自定义错误类型在JavaScript里面,运行过程中的错误的类型总是被人忽略,这篇教程主要从三个方面来介绍如何在Node.js下自定义错误类型。为什么要使用错误对象。怎么创建自定义错误对象。一些自定义错误对象的例子。为什么要使用错误对象一般来说,很少人会考虑如何处理应用产生的错误的策略,调试的过程中,简单地利用console.log('error')原创 2013-08-13 00:24:49 · 2807 阅读 · 0 评论 -
详解Node.js API系列 Crypto加密模块(2) Hmac
简介随着互联网的发展,MD5已经变得越来越不安全了,黑客可以通过彩虹表,查出MD5值所对应的密码,为了解决这个问题,很多网站都开始采用需要密钥加密的Hmac算法。Hmac算法HMAC是密钥相关的哈希运算消息认证码(Hash-based Message Authentication Code),HMAC运算利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。原创 2013-09-26 10:33:20 · 4405 阅读 · 0 评论 -
详解Node.js API系列 Http模块(2) CNodejs爬虫实现
博客地址:http://blog.whattoc.com/2013/09/19/nodejs_api_http_2/详解Node.js API系列 Http模块(2) CNodejs爬虫实现简单爬虫设计var http = require('http');http.get("http://cnodejs.org/", function(res) { v原创 2013-09-22 23:21:19 · 17236 阅读 · 4 评论 -
详解Node.js API系列 Http模块(1) 构造一个简单的静态页服务器
HTTPhttp api的文档翻译得太无聊了,很多用不上,例子太少,翻译到一半就觉得受不了,决定放弃,决定,用另外一种方式去介绍这部分的API。http模块,主要的应用是两部分,一部分是http.createServer 担当web服务器,另一部分是http.createClient,担当客户端,实现爬虫之类的工作。从这两方面着手介绍HTTP api。下文将会介绍http.createSe原创 2013-09-17 09:39:18 · 16280 阅读 · 0 评论 -
详解Node.js API系列C/C++ Addons(4) Javascript也能搞嵌入式?
利用Node.js的Addon模块作为调用硬件控制C库的中间件,Node.js异步的特性,非常适合处理各种硬件的IO。本次实践使用的是cubieboard的开发板,Node.js将会控制板子的GPIO的PD0,让它1000ms产生一个高低电平,使LED灯能够一闪一闪的样子。原创 2013-09-11 15:22:16 · 5345 阅读 · 1 评论 -
详解Node.js API系列 Module模块(2) 案例分析
API文档是枯燥的,下面本人收集了一些论坛经常有人疑问和开源代码中经常遇到的案例供大家研究一下。module.exports与exports的区别每一个node.js执行文件,都自动创建一个module对象,同时,module对象会创建一个叫exports的属性,初始化的值是 {}module.exports = {};Node.js为了方便地导出功能函数,node.j原创 2013-09-12 17:55:07 · 4336 阅读 · 0 评论 -
详解Node.js API系列C/C++ Addons(3) 程序实例
再续前文,前文介绍了node.js 的addon用法和google v8 引擎,下面,我们进入真正的编码,下面将会通过六个例子,学习node addon 范例,了解addon编程的特性创建一个空项目随机数模块向模块传递参数回调函数处理线程处理对象管理创建一个空项目vi modulename.cpp#include void RegisterModule(v8::H原创 2013-09-12 17:54:24 · 10509 阅读 · 1 评论 -
详解Node.js API系列C/C++ Addons(2) Google V8引擎
回顾,前文由node.js写的基于addon的hello world例子#include #include using namespace v8;HandleValue> Method(const Arguments& args) { HandleScope scope; return scope.Close(String::New("world"));}void init(原创 2013-09-11 15:21:10 · 4346 阅读 · 0 评论 -
详解Node.js API系列C/C++ Addons(1) API文档
Addons扩展插件(Addons)是动态链接的共享对象,这些对象提供了使用C/C++类库的能力。由于涉及了多个类库导致了这类API目前比较繁杂,主要包括下述几个主要类库:V8 JavaScript,C++类库,作为JavaScript的接口类,主要用于创建对象、调用方法等功能。大部分功能在头文件v8.h (在node文件夹下的路径为deps/v8/include/v8.h原创 2013-09-11 15:20:05 · 7665 阅读 · 1 评论 -
cb 的node.js 静态页面测试
server.jsvar http = require("http");http.createServer(function(request, response) { response.writeHead(200, {"Content-Type": "text/plain"}); response.write("Hello World"); response.end();})原创 2013-08-13 21:18:02 · 2226 阅读 · 0 评论 -
node.js的generic-pool与mysql结合,mysql连接池
var generic_pool = require('generic-pool');var pool = generic_pool.Pool({ name: 'mysql', max: 10, create: function(callback) { var Client = require('mysql').createConnectio原创 2013-04-05 12:14:54 · 4184 阅读 · 0 评论 -
pomelo源码分析(五)
接着上一章节,上一章节主要是介绍Master Server的初始化,接下来就是初始化后的启动lib/master/master.jsvar Server = function(app) { this.app = app; this.masterInfo = app.get('master'); this.registered = {}; this.masterConsole原创 2013-03-20 14:41:56 · 1690 阅读 · 0 评论 -
node.js的一点小花边
每次群上有人讨论node.js,都会显得特别热闹,针对大家讨论的热点问题,百度谷歌了一些资料作为参考。一、为什么叫Node.js,跟javascripts有什么关系?http://developer.51cto.com/art/201109/288849_1.htm事实上,Node.js采用C++语言编写而成,是一个Javascript的运行环境。为什么采用C++语言呢?据No原创 2013-03-19 12:54:52 · 1337 阅读 · 0 评论 -
node.js产生随机数
require('crypto').randomBytes(16, function(ex, buf) { var token = buf.toString('hex'); console.log(token);});原创 2013-01-02 11:11:16 · 17813 阅读 · 0 评论 -
node.js 上传东西到服务器 express
app.post('/file-upload', function(req, res, next) { console.log(req.body); console.log(req.files);});原创 2012-12-17 16:49:08 · 2552 阅读 · 0 评论 -
为node.js服务器添加静态网页,express模块。
app.use(express.static(path.join(__dirname, 'public')));设置静态文件目录,为当前目录的public,只要将静态页,扔在这个目录,就能读取。原创 2012-12-17 16:39:49 · 12833 阅读 · 0 评论 -
node.js 与 redis 与 express 和session协同工作
var RedisStore = require('connect-redis')(express);var redis_ip='192.168.238.135', redis_port ='6379' ; app.use(express.session({ secret: 'wefew', store: new RedisStore({原创 2012-12-17 16:38:06 · 9777 阅读 · 5 评论 -
node.js 的crypto模块,加密cookie
var crypto = require('crypto');function encrypt(str,secret) { var cipher = crypto.createCipher('aes192', secret); var enc = cipher.update(str,'utf8','hex'); enc += cipher.final('hex');原创 2012-12-17 16:44:41 · 3769 阅读 · 0 评论 -
node.js 与markdown模块样例
var markdown = require('markdown').markdownapp.get('/markdown', function(req, res) { var html = markdown.toHTML("[Java Eye](http://www.iteye.com/ \"Click\") "); res.send(html); res.end()原创 2012-12-17 16:42:24 · 2577 阅读 · 0 评论 -
node.js的redis模块样例
/** * Created with JetBrains WebStorm. * User: hexie * Date: 12-12-13 * Time: 上午10:17 * To change this template use File | Settings | File Templates. */var redis = require('redis');var redis原创 2012-12-13 18:00:50 · 3154 阅读 · 0 评论 -
node.js 之async.js 里waterfall模块样例
/** * Created with JetBrains WebStorm. * User: hexie * Date: 12-12-6 * Time: 上午9:58 * To change this template use File | Settings | File Templates. */var async = require('async');async.water原创 2012-12-09 13:39:05 · 17112 阅读 · 3 评论 -
node.js 之cookie 与express 模块样例
/** * Created with JetBrains WebStorm. * User: hexie * Date: 12-12-8 * Time: 下午9:32 * To change this template use File | Settings | File Templates. */var app = require('express').createServer()原创 2012-12-09 13:39:59 · 3260 阅读 · 1 评论 -
configure: error: recommended PNG functions feature could not be enabled
安装node.js 的 node-canvas 程序的时候遇到报错,解决方法如下$ sudo yum erase cairo 卸载cairo$ curl http://www.cairographics.org/releases/pixman-0.22.0.tar.gz -o pixman.tar.gz $ tar -zxf pixman.tar.gz && cd pixman-原创 2013-01-03 15:09:02 · 5158 阅读 · 1 评论 -
node.js基于工厂方法的mysql模块封装
有空写完再补说明,手上的事情比较多,以后边做边完善接口。app.jsvar config = require('./config');function Query(strquery,option){ DBFactory.call(this,option); this.strquery = strquery;}Query.prototype = { e原创 2013-01-24 17:19:02 · 4986 阅读 · 0 评论 -
node.js读取静态网页
var fs = require('fs'); fs.readFile('./views/test.html', 'utf-8',function (err, data) { res.send(data); });原创 2013-01-18 20:58:58 · 2588 阅读 · 1 评论 -
pomelo源码分析(四)
接着上文,上文利用提到程序利用this._optComponents('start', function(err) { self.state = STATE_START; utils.invokeCallback(cb, err); }); 发送命令让刚配置好的服务器模块,执行start命令,现在我们开始分析master.start();lib原创 2013-03-02 13:39:25 · 3032 阅读 · 0 评论 -
pomelo源码分析(三)
app.js// start appapp.start();lib/application.js/** * Start application. It would load the default components and start all the loaded components. * * @param {Function} cb callback function原创 2013-02-27 20:17:24 · 5145 阅读 · 1 评论 -
pomelo源码分析(一)
千里之行始于足下,一直说想了解pomelo,对pomelo有兴趣,但一直迟迟没有去碰,虽然对pomelo进行源码分析,在网络上肯定不止我一个,已经有很优秀的前辈走在前面,如http://golanger.cn/,在阅读Pomelo代码的时候,已经连载到了11篇了,在我的源码分析参考了该博客,当然,也会加入我对pomelo的理解,借此希望能提高一下自己对node.js的了解和学习一些优秀的设计。原创 2013-02-26 21:10:13 · 22602 阅读 · 0 评论