12 2011 档案
摘要:系列目录:Node.js摸石头系列目录 上一回聊天室的代码,我曾经答应在下一讲进行详细的解释,对不起,我食言了。因为今天我写了个小东东想和大家分享。那个,那个详细解释放到下一回吧。咳,咳……一、 还记得 Flash 的 Share Object 吗?没错,咱们不用插件就实现他。 flash 中有一个 share object ,可以让大家通过网络共享一个对象。曾经有个示例,就是甲拖动屏幕上的小球,乙的屏幕上的小球也同样被拖动了,乙也同样可以拖动的动作共享给甲。当初看到这个例子时,我觉得好神奇啊。可是一打听,完成这样的功能需要 Flash Media Server,这玩意是要钱钱地。不过没关系,
阅读全文
摘要:系列目录:Node.js摸石头系列目录一、热线热线 上回我们建立了一个框架,并测试正常工作了。在测试的时候,我们得到了一段长长的 Js 代码。这段代码可是宝贝啊,这是公主送给您的话机啊,赶紧收好,用它我们就可以和公主热线啦!趁今天圣诞节,赶紧和公主说声节日快乐吧,否则可要没戏哦。 好,速度:在 chatroom 文件夹下建一个 .htm 文件,名字嘛就叫 chatClient.htm 好了。chatClient.htm 原本是一平淡无奇的文件,不过,我们把前面获得的“话机”给他,他就成了我们的接线员了。作为一名充满好奇心的程序猿,我相信您已经把话机拆开,把您的爪子在话机里摸啊摸的,嗯,这个事请
阅读全文
摘要:系列目录:Node.js摸石头系列目录 从这回开始,我们来搭建一个简单的聊天室。因为 http 协议是无状态的,搭建聊天室这样的事从来都让人觉得疙疙瘩瘩的不是那么顺理成章。如果不使用 flash、applet 等浏览器插件的话,我们需要定期轮询服务器来获取大家的聊天信息。这造成了一定的延迟和大量的网络通讯。 不过,随着 HTML5 的浮出水面,这一情况有望彻底改观了。在 HTML5 的众多特性中,有一个总是悄悄站在幕后的大哥级人物,他就是 WebSocket 。WebSocket 实在是太强大了,Firefox 浏览器在支持一段时间后,觉得实在不能保证这位大哥不会干出点什么出格的事,把他打入冷
阅读全文
摘要:系列目录:Node.js摸石头系列目录一、一个错误引发的摸索 上回我们在获取 request 对象的 headers 属性的 'user-agent’ 属性时,我使用了 request.headers.user-agent 这样的语法,谢谢网友artwl的提醒,这样写经实验是不行的。可是,为什么不行呢?这件事让我迷惑了。Js 中对象可以理解为属性的集合,属性的构成是键值对,Function 并不搞特殊化,和其他类型一视同仁。属性的值可以通过 object.key 或者 object[‘key’] 的方式来访问。问题出在哪里呢?上网一顿猛摸,无果。后来观察观察 headers 对象:he
阅读全文
摘要:系列目录:Node.js摸石头系列目录一、完成HelloWorld 上回我们说到,使用 node.js ,我们可以迅速架起一个 http 服务器。不过上次咱们仅仅是在后台看到了客户端发来了访问,还没把 “Hello World” 给发出去呢。好,说干就干。 大家都明白,我们的Web应用抽象起来就是客户端发出请求,请求到达服务器后,服务器经过一番捣鼓,给客户端发回一个应答。“请求”我们一般抽象成 request,“应答”是 response。服务器和客户端(一般也就是浏览器啦,但是绝不局限于浏览器哦。)之间交流的语言就是 HTTP 协议了。至于服务器怎么折腾出一个应答来的,就八仙过海,各显神通了
阅读全文
摘要:1、Node.js 的安装和控制台命令——Node.js摸石头系列之一2、架一个HTTP服务——Node.js摸石头系列之二3、完成HelloWorld——Node.js摸石头系列之三4、完成静态服务器——Node.js摸石头系列之四5、WebSocket 一场Web 通讯革命悄然来临——Node.js摸石头系列之五6、实现使用Websocket通讯的聊天室——Node.js摸石头系列之六7、大家都可以拖动的web小方块——Node.js摸石头系列之七
阅读全文
摘要:系列目录:Node.js摸石头系列目录 摸石头就是摸着石头过河的意思。Node.js 正在快速发展,有广阔的应用前景,不过文档和参考资料也不是十分完备。这个系列其实就是我的读书笔记了。我学习的方式基本上是鲸吞和试验两大法宝。这两个法宝很有效,但同时也耗费很大的时间和精力。所以,希望把自己趟过的路,插上路标,帮助童鞋们节约点时间。 上回说道:在 Windows 平台(本系列都是基于Windows平台,后面就不再注明了),node.js 可以精简到一个可执行文件,运行这个文件,我们就得到了一个控制台,在这个控制台,我们可以以 REPL (Read-Eval-Print-Loop) 的方式交互的执行
阅读全文
摘要:一、Node.js简介 为了说服您阅读这份简单的说明,我想先给Node.js做点广告还是有必要的。先看看都有谁在用Node.js吧,跟着业界老大混,总是大差不差的。首先,微软的云服务Azure已经开始支持Node.js、还有就是Ebay、Yahoo、Linkedin,是不是有点精神了?嗯,我们继续。下面是官网的自我介绍: Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an ev
阅读全文