express node 框架介绍
开篇先声明一个重点:
就是论文件模块的重要性,之前我一直以为 fs 模块不重要,后来遇到了问题,才发现我之前的自以为是是多么愚蠢的一件事,我现在知道了 fs 模块的重要性
fs 模块:用于对文件的操作,重要的是 读,写 其中最关键的是:读;
请大家想象一个情景,我们利用 nodejs 开启了一个服务器,开启服务器的目的,是想让别人访问,所以我们会把网址给别人,让他们访问,这样的话,就出了一个
问题,不能让他们直接访问我们的服务器吧,而且还是 js 文件,就算访问了也没有任何响应,如果我们在服务器里建一个根目录,让别人访问我们跟目录的文件,
里面放 html 文件 、css 文件 、js 文件 等等,只有这样我们才能让别人看到我们精彩绝伦的页面;
所有待会我会重点介绍 express 中的 文件处理模块
express 框架 他是 nodejs 的框架
1. 安装:npm i express
express 框架的好处,对 nodejs 的优化,非破坏性的,他的上面拥有众多的插件,他跟 npm 极其类似,像别的插件以他为载体,在他的基础上实现的功能
非破坏性:保留了原有的功能,添加方法,增强了原有的功能;
2. 配置服务器:
第一步:先引入模块:var express=require("express");
第二步:创建服务器:var server=express();
第三步:服务器端口:server.listen(8080);
3. 接受请求:
server.get("地址",function(req,res){}) // 这种写法
express 这一点特别好,像 原生 nodejs 写法,我们必须要在创建的服务器里面,书写代码逻辑,现在我们可以直接在外面书写代码逻辑,不需要考虑顺序等等
第一种:get 接受请求 // 只能接受 get 发送的请求
server.get("地址",function(req,res){}); // 具体接收的请求 req.query
第二种:post 接受请求 // 只能接受 post 发送的请求
server.post("地址",function(req,res){});
// post 接收请求还需要下载插件 body-parser
// server.use(bodyParser.urlencoded({extended: false})); // 这一步超级有必要 解析 body 中的字符,不然 req.body 无法接收
// 然后接收方式 req.body
第三种:use 接受请求 // 既能接受 get 发送的请求,也能接受 post 发送的请求
server.use("地址",function(req,res){}); // 就是上面的两种接受方式
4. 响应:
express 写法
res.send() 返回给 浏览器一个 json 对象 // 这是 express 新增的方法 且 不需要 写 res.end()
原生 nodejs 写法 :必须成对出现的
res.write() 返回给浏览器一个 字符串 // 且只能是字符串,返回别的数据类型就会报错
res.end() 且必须要 end() 才可以;
在 experss 框架中,文件处理显得非常简单
1. 下载插件 express-static
npm i express-static
2. 指定根目录:例如 指定 www 根目录
server.use(expressStatic("./www"));
express node 框架介绍的更多相关文章
- node.js入门及express.js框架
node.js介绍 javascript原本只是用来处理前端,Node使得javascript编写服务端程序成为可能.于是前端开发者也可以借此轻松进入后端开发领域.Node是基于Google的V8引擎 ...
- 深入浅出node.js游戏服务器开发1——基础架构与框架介绍
2013年04月19日 14:09:37 MJiao 阅读数:4614 深入浅出node.js游戏服务器开发1——基础架构与框架介绍 游戏服务器概述 没开发过游戏的人会觉得游戏服务器是很神秘的 ...
- 在 node.js 的 express web 框架中自动注册路由
该方法主要是动态注册自己写的 router . 注册器 router 文件名为 loader.js . var express = require('express'); var fs = requ ...
- koa2框架介绍
koa2框架介绍 1.koa2介绍:是当前最流行的node.js的框架,koa2是由express原来的人打造的.他的体积很小,但是扩展性很强. 2.koa2优点和缺点: 2.1.优点: .抛弃了ca ...
- [连载]《C#通讯(串口和网络)框架的设计与实现》-1.通讯框架介绍
[连载]<C#通讯(串口和网络)框架的设计与实现>- 0.前言 目 录 第一章 通讯框架介绍... 2 1.1 通讯的本质... 2 1 ...
- UiAutomator自动化测试框架介绍
UiAutomator自动化测试框架介绍 环境搭建 1 必要条件 1.1 JDK 1.2 SDK(API高于15) 1.3 Eclipse 2 ...
- 使用express.js框架一步步实现基本应用以及构建可扩展的web应用
最近过年在家有点懈怠,但是自己也不断在学习新的前端技术,在家琢磨了express.js的web框架. 框架的作用就是提高开发效率,快速产出结果.即使不使用框架,我们也会在开发过程中逐渐形成构成框架. ...
- 从Nest到Nesk -- 模块化Node框架的实践
文: 达孚(沪江Web前端架构师) 本文原创,转至沪江技术 首先上一下项目地址(:>): Nest:https://github.com/nestjs/nest Nesk:https://git ...
- 安装nodeJs静态服务器(NodeJs Express MVC 框架)
安装 NodeJs Express MVC 框架 新建项目文件夹 打开cmd 执行以下操作: 一.使用Express框架 1)安装express3 $: npm install -g ex ...
随机推荐
- 不基于比较的排序算法:Counting-sort和Radix-sort
- mybatis的if
<select id="findList" resultType="BndExport"> SELECT <include refid=&qu ...
- js 重要函数
1. Array.some some() 方法用于检测数组中的元素是否满足指定条件(函数提供) 如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测.如果没有满足条件的元素,则返 ...
- NTL 库函数
NTL是一个高性能,可移植的C ++库,为任意长度的整数提供数据结构和算法; 可用于整数和有限域上的向量,矩阵和多项式; 可用于任意精度浮点运算. NTL为以下方面提供高质量的最先进算法实现: 任意长 ...
- postgres导入和导出
导出整个数据库: pg_dump -h 127.0.0.1 -U zhang mydb >mydb_dum.sql 导出某个表: pg_dump -h 127.0.0.1 -U zhang my ...
- 虚拟机Linux下扩展硬盘的方法
[原文链接]:http://blog.csdn.net/tianlesoftware/article/details/5642883 装虚拟机时空间划小了,于是又加了5G的空间,折腾了半天,挂上去了. ...
- linux下测试web访问及网络相关的命令
curl命令 curl是linux系统命令行下用来简单测试web访问的工具. curl -xip:port www.baidu.com -x可以指定ip和端口,省略写hosts,方便实用 -I ...
- QT textbroswer textedite Qlist的常用的操作函数
Textbrowser: 一.添加函数 1.insertPlainText():这个函数特别好用,括号里面的参数是QString,可以用QString(“%1%2”).arg(QString变量).a ...
- @AutoConfigureBefore
@AutoConfigureBefore(Xxx.class)此注解用在类名上,标识在加载Xxx类前加载该配置类
- 红帽Linux故障定位技术详解与实例(1)
红帽Linux故障定位技术详解与实例(1) 2011-09-28 14:26 圈儿 BEAREYES.COM 我要评论(0) 字号:T | T 在线故障定位就是在故障发生时, 故障所处的操作系统环境仍 ...