07-Node.js学习笔记-路由
路由
```
http://localhost:3000/index
http://localhost:3000/login
//路由是指客户端请求地址与服务器端程序代码的对应关系。简单的说,就是请求什么响应什么。
```
```
//当客户端发来请求的时候
app.on('request',(req,res)=>{
//获取客户端的请求的路径
let {pathname} = url.parse(req.url);
if(pathname =='/'||pathname=='/index'){
res.end('欢迎来到首页');
}else if(pathname=='/list'){
res.end('欢迎来到列表页面');
}else{
res.end('抱歉,您访问的也能出游了');
}
});
```
```
//1.引入系统模块http
//2.创建网站服务器
//3.为网站服务器对象添加请求事件
//4.实现路由功能
//a.获取客户端的请求方式
//b.获取客户端的请求地址
const http = require('http');
const url = require('url');
const app = http.createServer();
app.on('request',(req,res)=>{
//判断请求方式
const method = req.method.toLowerCase();
//获取请求地址
const pathname = url.parse(req.url).pathname
//响应报文处理
res.writeHead(200,{
'content-type':'text/html;charset=utf8'
})
if(method'get'){
if(pathname'/'||pathname"/index"){
res.end('欢迎来到首页')
}else if(pathname'/list'){
res.end('欢迎来到列表页')
}else{
res.end('对不起,您访问的页面不存在')
}
}else if(method'post'){
if(pathname'/'||pathname"/index"){
res.end('欢迎来到首页0')
}else if(pathname'/list'){
res.end('欢迎来到列表页0')
}else{
res.end('对不起,您访问的页面不存在0')
}
}
});
app.listen(3000);
console.log('服务器启动成功')
Document
<form action="http://localhost:3000" method="post">
<input type="text" name="uname">
<input type="password" name="password">
<input type="submit">
</form>
```
07-Node.js学习笔记-路由的更多相关文章
- 一点感悟:《Node.js学习笔记》star数突破1000+
写作背景 笔者前年开始撰写的<Node.js学习笔记> github star 数突破了1000,算是个里程碑吧. 从第一次提交(2016.11.03)到现在,1年半过去了.突然有些感慨, ...
- Node.js学习笔记(3):NPM简明教程
Node.js学习笔记(3):NPM简明教程 NPM常用操作 更新NPM版本 npm install npm -g -g,表示全局安装.我们可以指定更新版本,只需要在后面填上@版本号即可,也可以输入@ ...
- 系列文章--Node.js学习笔记系列
Node.js学习笔记系列总索引 Nodejs学习笔记(一)--- 简介及安装Node.js开发环境 Nodejs学习笔记(二)--- 事件模块 Nodejs学习笔记(三)--- 模块 Nodejs学 ...
- Node.js学习笔记(2):基本模块
Node.js学习笔记(2):基本模块 模块 引入模块 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在No ...
- Node.js学习笔记(1):Node.js快速开始
Node.js学习笔记(1):Node.js快速开始 Node.js的安装 下载 官方网址:https://nodejs.org/en/ 说明: 在Windows上安装时务必选择全部组件,包括勾选Ad ...
- Node.js学习笔记(4):Yarn简明教程
Node.js学习笔记(4):Yarn简明教程. 引入Yarn NPM是常用的包管理工具,现在我们引入是新一代的包管理工具Yarn.其具有快速.安全.可靠的特点. 安装方式 使用npm工具安装yarn ...
- Node.js学习笔记(一)基础介绍
什么是Node.js 官网介绍: Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js us ...
- Node.js学习笔记(3) - 简单的curd
这个算是不算完结的完结吧,前段时间也是看了好久的Node相关的东西,总想着去整理一下,可是当时也没有时间: 现在看来在整理的话,就有些混乱,自己也懒了,就没在整理,只是简单的记录一下 一.demo的简 ...
- Node.js学习笔记——Node.js开发Web后台服务
一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...
- Node.js学习笔记(一)
1.回调函数 node是一个异步事件驱动的平台,所以在代码中我们经常需要使用回调函数. 例: setTimeout(function(){ console.log('callback is calle ...
随机推荐
- ARTS-S redis3.2.10通过ip访问
只用把配制文件里的bind 127.0.0.1改成0.0.0.0,然后重启即可.不用再有别的配制.
- Jmeter介绍以及脚本制作与调试
目录 Jmeter介绍 Jmeter安装 Jmeter主要测试组件 Jmeter元件作用域与执行顺序 Jmeter运行原理 Jmeter脚本制作 Jmeter脚本调试 Jmeter介绍 Jmeter ...
- Vue中router路由异步加载组件-优化性能
何时使用异步加载组件 当首页app.js文件太大时,可以拆分组件异步加载,如果app.js文件很小时,不建议使用异步加载组件,因为异步加载组件时每次都要发送一个HTTP请求,这样的代价远比首页一次性加 ...
- LiteByte教程
转载请标明原文地址:https://www.cnblogs.com/zhangyukof/p/12073041.html 简介 LiteByte是一种轻量级的二进制数据交换格式.体积小巧.简单易用是设 ...
- js中的对象知识总结
文章目录: 1. 比较两个对象是否相等 1. 比较两个对象是否相等 通过===运算符,只有在两个变量指向同一个对象时才返回true,否则返回false.要想比较两个对象中的内容是否相等,需要利用遍历对 ...
- 《Dotnet9》系列-Google ProtoBuf在C#中的简单应用
时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...
- ASP.NET Core知多少(13):路由重写及重定向
背景 在做微信公众号的改版工作,之前的业务逻辑全塞在一个控制器中,现需要将其按厂家拆分,但要求入口不变. 拆分很简单,定义控制器基类,添加公用虚方法并实现,各个厂家按需重载. 但如何根据统一的入口参数 ...
- Bootstrap模板-Amaretti.2.6.2
密罐地址: 点我下载
- 最后的记忆——Spring BeanFactory
本文尝试分析一下Spring 的BeanFactory 体系的 接口设计,尝试理解为什么这么做,为什么接口这么设计.为什么这么去实现,为什么需要有这个方法,为什么 这样命名?接口.类.方法的 大致用途 ...
- c语言从入门到精通的几个阶段
本文主要结合往期学员学习阶段,因材施教整理的几个阶段学习路线知识点: 1.初级教程 初级c语言入门教程比较适合零基础的小白,这个周期一般在22天,度过这个阶段的小白,基本上已经拥有了编程思维,且能开发 ...