Node.js笔记(0001)---connect模块
2014-08-02 11:32
465 查看
首先来看这一部分代码
如果请求http://localhost:3000
这一部分代码的输出是什么(控制台和浏览器中)?
首先想到的第一个答案可能是
浏览器:hello bsnhello again
控制台:/
然而实际上输出的是:
浏览器:hello bsn
控制台:/
/favicon.ico
为什么?
关于控制台的输出结果是因为请求了两次,除了我们手动触发的那一次,还包括浏览器自动去请求图标的那一次,这一点自然好理解
那关于浏览器为什么输出的不是hello bsnhello again呢?
因为在第一次请求的时候,在hello方法处理中使用了res.end(...);即resonse已经结束,后面的响应就失效,如果hello方法是这样写的:
那结果就是浏览器输出hello bsnhello again
关于这个模块自己知识刚开始接触,后续自己也会深入去学习
/** * Created by bsn on 14-7-1. */ var connect = require('connect'); var app = connect(); function hello(req, res, next) { console.log(req.url); res.end('hello bsn'); next(); } function helloAgain(req, res) { console.log('hello again'); res.end('hello again'); } app.use(hello) .listen(3000);
如果请求http://localhost:3000
这一部分代码的输出是什么(控制台和浏览器中)?
首先想到的第一个答案可能是
浏览器:hello bsnhello again
控制台:/
然而实际上输出的是:
浏览器:hello bsn
控制台:/
/favicon.ico
为什么?
关于控制台的输出结果是因为请求了两次,除了我们手动触发的那一次,还包括浏览器自动去请求图标的那一次,这一点自然好理解
那关于浏览器为什么输出的不是hello bsnhello again呢?
因为在第一次请求的时候,在hello方法处理中使用了res.end(...);即resonse已经结束,后面的响应就失效,如果hello方法是这样写的:
function hello(req, res, next) { console.log(req.url); res.write('hello bsn'); next(); }
那结果就是浏览器输出hello bsnhello again
关于这个模块自己知识刚开始接触,后续自己也会深入去学习
相关文章推荐
- node.js 学习笔记二:创建属于自己的模块
- node.js系列笔记之fs模块《二》
- node.js学习笔记5——核心模块1
- NODE.JS学习笔记——CRYPTO 加密模块
- node.js学习笔记(8)--multer模块文件上传
- Node.js模块 加载笔记
- Node.js学习笔记4【核心模块--fs】
- Node.js笔记之模块机制
- Node.js中的模块机制学习笔记
- node.js学习笔记之模块调用
- 深入浅出Node.js(八):Connect模块解析(之二)静态文件中间件
- Node.js学习笔记2【核心模块】
- 深入浅出Node.js(八):Connect模块解析(之二)静态文件中间件
- 理解Node.js中间件以及Connect 模块
- 深入浅出Node.js(七):Connect模块解析(之一)
- NODE.JS学习笔记——CRYPTO 加密模块
- Node.js学习笔记【1】入门(服务器JS、函数式编程、阻塞与非阻塞、回调、事件、内部和外部模块)
- 【Node.js学习笔记1--模块 npm】
- nodejs require本地模块的一些细节笔记
- 【深入浅出Node.js系列七】Connect模块解析