让MySQL搜索区分大小写或排序时分大小写方法如下: 1.在SQL中强制 SELECT `field` FROM `table` WHERE BINARY…
June 21, 2016
Node.js:一个路由2次 request
node.js 和其他服务器端编程语言有很大区别,语言上的特性优点已经在前面分享过,这里就不说了.
与其他语言相比,还有一个区别,node.js 自身实现了一个服务器,而其他服务器端语言大部分要依赖Apach ,nginx ,IIS 等.
node.js 可以用几句代码轻松实现:
var http = require('http'); var webServer = function (req, res){ res.writeHead(200, {'Content-Type': 'text/html;charset=utf-8'}); res.write('<html><body>'); res.write('<h2>Hello World!</h2>'); res.end('</body></html>'); }; var createWebServer=http.createServer(webServer); createWebServer.listen(8000); console.log('listen 8000');
上面我们就实现了,不论什么路由,服务器端都会返回 Hello World!
但是:如果你看控制台log 会发现每个url的请求,都有2次 request .
不信可以把 console.log(req);
放到 webServer 函数中间,你一定会发现每个请求都输出2次 request 信息.
原因是因为node.js 每个请求默认还有一个 对 favicon.ico 资源的请求.Express 貌似对此请求做了特殊处理.
我们可以这样避免 favicon.ico 资源的请求
var http = require('http'); var webServer = function (req, res){ if(req.url!='/favicon.ico'){ res.writeHead(200, {'Content-Type': 'text/html;charset=utf-8'}); res.write('<html><body>'); res.write('<h2>Hello World!</h2>'); res.end('</body></html>'); } }; var createWebServer=http.createServer(webServer); createWebServer.listen(8000); console.log('listen 8000');
转自:http://yijiebuyi.com/blog/ee3c1f200f2824e581900509d9c9d246.html