node学习记录之搭建web服务器教程


Posted in Javascript onFebruary 16, 2017

web服务器的基本知识

功能:1.接收HTTP请求(get,post,delete,put)2.处理HTTP请求

常见的web服务器架构:

1. Nginx/Apache:负责接收http请求,确定谁来处理请求,并返回请求的结果

2. php-fpm/php模块

常见得到请求

1.请求文件:包括要处理的静态文件

2.完成特定的操作,如登录,获取特定数据等等

使用http创建web服务器

//引入nodejs的核心模块http
var http = require('http') ;
//创建一个http实例
var reqHandler = function(req,res){
 res.end("我全部接受完了") //用来表示已经对响应内容全部接收
}
var web = http.createServer(reqHandler());
web.listen(666)
console.log("http runnibg on http://localhost:666")

运行方法在命令行中 输入node httptest.js即可

使用express创建web服务器

//引入模块
var express = require("express") ;

var app = express() ;

//通过路由控制响应;
app.get('/',function(req,res){
 res.end("mingming love dama")
})
app.listen(666 , function(){
 console.log('express is running')
}) ;

效果同上

静态文件

app.use(express.static('./public'))

以./public作为静态文件仓库的起始位置。

路由

将不同的请求分配给响应的处理函数

三种路由的方法 :1) path方法  2)Router方式  3)route

1. path方法

app.get('/test',function(req,res){
 res.send("id: "+req.query.id+" password: "+req.query.password);
})

当我们请求http://localhost:3000/test?id=120&password=11001时会

node学习记录之搭建web服务器教程

这就是path方法设置路由。

2. Router方法 

var express = require("express") ;

var app = express();
app.use(express.static('./public'))
//引入路由
var router = express.Router() ;
router.use(function log(){
 console.log('Time: ', Date.now());
})
//调用路由
router.get('/',function(req,res){
 res.send('Birds home page');
})
router.get('/about',function(req,res){
 res.send('Birds about page')
})
router.get('/test',function(req,res){
 res.send('Birds test page')
})

app.use('/bird',router)
app.listen(3000,function(){
 console.log("express is running")
 //监听成功得回掉方法
})

这样就定制好了路由了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery中获取元素的几种方式小结
Jul 05 Javascript
在页面中js获取光标/鼠标的坐标及光标的像素坐标
Nov 11 Javascript
jquery 显示*天*时*分*秒实现时间计时器
May 07 Javascript
原生JavaScript+LESS实现瀑布流
Dec 12 Javascript
jQuery中DOM树操作之使用反向插入方法实例分析
Jan 23 Javascript
基于JavaScript实现动态创建表格和增加表格行数
Dec 20 Javascript
使用AngularJS对表单提交内容进行验证的操作方法
Jul 12 Javascript
js实现日期显示的一些操作(实例讲解)
Jul 27 Javascript
Angular2之二级路由详解
Aug 31 Javascript
微信小程序功能之全屏滚动效果的实现代码
Nov 22 Javascript
记一次vue-webpack项目优化实践详解
Feb 17 Javascript
JS根据json数组多个字段排序及json数组常用操作
Jun 06 Javascript
Angular实现跨域(搜索框的下拉列表)
Feb 16 #Javascript
基于Bootstrap 3 JQuery及RegExp的表单验证功能
Feb 16 #Javascript
js模态对话框使用方法详解
Feb 16 #Javascript
javascript获取以及设置光标位置
Feb 16 #Javascript
JavaScript实现翻页功能(附效果图)
Feb 16 #Javascript
浅谈$_FILES数组为空的原因
Feb 16 #Javascript
原生js实现秒表计时器功能
Feb 16 #Javascript
You might like
php下过滤html代码的函数 提高程序安全性
2010/03/02 PHP
PHP在特殊字符前加斜杠的实现代码
2011/07/17 PHP
dhtmlxTree目录树增加右键菜单以及拖拽排序的实现方法
2013/04/26 PHP
php 如何获取文件的后缀名
2016/06/05 PHP
Linux平台php命令行程序处理管道数据的方法
2016/11/10 PHP
使用 laravel sms 构建短信验证码发送校验功能
2017/11/06 PHP
PHP中有关长整数的一些操作教程
2019/09/11 PHP
浅谈laravel orm 中的一对多关系 hasMany
2019/10/21 PHP
Iframe 自动适应页面的高度示例代码
2014/02/26 Javascript
thinkphp中常用的系统常量和系统变量
2014/03/05 Javascript
js实现感应鼠标图片透明度变化的方法
2015/02/20 Javascript
JavaScript:Date类型全面解析
2016/05/19 Javascript
AngularJS入门教程之Scope(作用域)
2016/07/27 Javascript
vue2.0+webpack环境的构造过程
2016/11/08 Javascript
vue项目中做编辑功能传递数据时遇到问题的解决方法
2016/12/19 Javascript
Vue 2.X的状态管理vuex记录详解
2017/03/23 Javascript
浅析webpack 如何优雅的使用tree-shaking(摇树优化)
2017/08/16 Javascript
代码详解Vuejs响应式原理
2017/12/20 Javascript
react router4+redux实现路由权限控制的方法
2018/05/03 Javascript
JS判断字符串是否为整数的方法--简单的正则判断
2018/07/23 Javascript
vue中使用sessionStorage记住密码功能
2018/07/24 Javascript
React中使用async validator进行表单验证的实例代码
2018/08/17 Javascript
react 应用多入口配置及实践总结
2018/10/17 Javascript
微信小程序实现同一页面取值的方法分析
2019/04/30 Javascript
ES6的解构赋值实例详解
2019/05/06 Javascript
vue使用i18n实现国际化的方法详解
2019/09/05 Javascript
解决Antd 里面的select 选择框联动触发的问题
2020/10/24 Javascript
在Django中限制已登录用户的访问的方法
2015/07/23 Python
python异步实现定时任务和周期任务的方法
2019/06/29 Python
Python Socketserver实现FTP文件上传下载代码实例
2020/03/27 Python
Python3 socket即时通讯脚本实现代码实例(threading多线程)
2020/06/01 Python
会计专业大学生职业生涯规划范文
2014/01/11 职场文书
经济贸易专业自荐信
2014/06/11 职场文书
2014年社区工作总结
2014/11/18 职场文书
2014年超市员工工作总结
2014/11/18 职场文书
python playwright之元素定位示例详解
2022/07/23 Python