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
本文转自:Node.js:一个路由2次 request
Node.js:一个路由2次 request相关推荐
- Node.js:路由
ylbtech-Node.js:路由 1.返回顶部 1. Node.js 路由 我们要为路由提供请求的 URL 和其他需要的 GET 及 POST 参数,随后路由需要根据这些数据来执行相应的代码. 因 ...
- linux 页面内容输出,Node.js 一个简单的页面输出
最近决定重拾node.js,用它来做一个合并JS文件的东西.由于忘得差不多了,先看能不能输出一个页面来再说.以下是我的一些笔记,省得以后又忘净光-- 安装过程就不说了.如果成功是能使用node的命令. ...
- node.js 程序_如何不使用外部程序包创建Node.js Web应用程序
node.js 程序 by Abhinav Pandey 通过Abhinav Pandey 如何不使用外部程序包创建Node.js Web应用程序 (How to create a Node.js w ...
- Node.js 使用axios读写influxDB
Node.js读写数据到influxDB,目前已经有一个库node-influx, 这个库功能非常强大,但是我个人使用这个库的时候,遇到无法解决的问题. 使用curl都可以写数据到influxDB,但 ...
- 基于Node.js + WebSocket 的简易聊天室
代码地址如下: http://www.demodashi.com/demo/13282.html Node.js聊天室运行说明 Node.js的本质就是运行在服务端的JavaScript.Node.j ...
- 【Node.js学习笔记一】什么是Node.js?[概念总结]
什么是Node.js? 一个 "编码就绪" 服务器 Node.js是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩 ...
- 【Node.js】初识Node.js
系列文章目录 文章目录 系列文章目录 一.什么是 Node.js 二.下载和安装 Node.js 1.普通方式 2.使用 nvm 安装 三.Node.js 和 JavaScript 的区别 1.ECM ...
- Node.js创造者Ryan Dahl专访
这哥们一看就是一个技术宅,他说他创建的Node.js没有GO语音在服务端好用. https://www.sohu.com/a/190139896_464084 Node.js创造者Ryan Dahl专 ...
- 使用Node.js写一个简单的api接口
引入Http模块 默认你已经安装了Node.js Node当中内置了Http模块: 可以使用 var http= require("http"); 复制代码 引入http模块: H ...
最新文章
- 人工智能伦理如何设定,从种群层面看人类的知识积累和进化
- 一份不错的vue.js基础笔记!!!!
- Kali Linux又增加一个顶级域名kali.download
- 洪嘉振 计算多体系统动力学pdf_多体动力学演化python入门——quantum many-body scars 和稀疏矩阵后续...
- 数据结构和算法 —— 图
- 世界是一台超级计算机,这个世界其实是一个超级计算机
- CentOS配置Lamp
- nginx lua以html显示,nginx 支持lua及lua脚本格式化日志
- sql azure 语法_方便SQL笔记本,用于在Azure Data Studio中进行故障排除
- Bailian2806 公共子序列【最长公共子序列+DP】
- k8s 1.16安装metrics server
- Git-查看远程分支、本地分支、创建分支
- 【UML建模】(8) UML建模之组件图
- 17届智能车竞赛技术报告 | 常熟理工学院-昆承湖二队
- 锚点是什么?锚点的使用
- HDCP Key工作原理
- Aura Component父子组件通信
- 机器学习12-支持向量机的数学上定义
- ES6特性:箭头函数转换,闭包
- Lua入门(1) 编译环境、变量类型与三种结构的实现
热门文章
- C++语言基础 —— STL —— 容器与迭代器 —— list 与 deque
- 暑期训练日志----2018.8.11
- 信息学奥赛一本通C++语言——1090:含k个3的数
- 17 SD配置-企业结构-分配-分配允许的信用控制范围给公司码
- centos7查看进程ps_还在一台台登录网络设备查看日志吗?你太low了
- 论 js中:(class、id)出乎意料的优先级?- 案例篇
- java共享租车信息管理系统jsp源码
- python opencv 膨胀_OpenCV-Python:形态学操作
- 彩虹云商城免授权版本6.7.5完整源码
- 流量卡物联网卡管理平台源码|PHP管理系统源码