开篇先声明一个重点:

    就是论文件模块的重要性,之前我一直以为 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 框架介绍的更多相关文章

  1. node.js入门及express.js框架

    node.js介绍 javascript原本只是用来处理前端,Node使得javascript编写服务端程序成为可能.于是前端开发者也可以借此轻松进入后端开发领域.Node是基于Google的V8引擎 ...

  2. 深入浅出node.js游戏服务器开发1——基础架构与框架介绍

    2013年04月19日 14:09:37 MJiao 阅读数:4614   深入浅出node.js游戏服务器开发1——基础架构与框架介绍   游戏服务器概述 没开发过游戏的人会觉得游戏服务器是很神秘的 ...

  3. 在 node.js 的 express web 框架中自动注册路由

    该方法主要是动态注册自己写的 router . 注册器 router 文件名为 loader.js  . var express = require('express'); var fs = requ ...

  4. koa2框架介绍

    koa2框架介绍 1.koa2介绍:是当前最流行的node.js的框架,koa2是由express原来的人打造的.他的体积很小,但是扩展性很强. 2.koa2优点和缺点: 2.1.优点: .抛弃了ca ...

  5. [连载]《C#通讯(串口和网络)框架的设计与实现》-1.通讯框架介绍

    [连载]<C#通讯(串口和网络)框架的设计与实现>- 0.前言 目       录 第一章           通讯框架介绍... 2 1.1           通讯的本质... 2 1 ...

  6. UiAutomator自动化测试框架介绍

    UiAutomator自动化测试框架介绍 环境搭建 1         必要条件 1.1       JDK 1.2       SDK(API高于15) 1.3       Eclipse 2    ...

  7. 使用express.js框架一步步实现基本应用以及构建可扩展的web应用

    最近过年在家有点懈怠,但是自己也不断在学习新的前端技术,在家琢磨了express.js的web框架. 框架的作用就是提高开发效率,快速产出结果.即使不使用框架,我们也会在开发过程中逐渐形成构成框架. ...

  8. 从Nest到Nesk -- 模块化Node框架的实践

    文: 达孚(沪江Web前端架构师) 本文原创,转至沪江技术 首先上一下项目地址(:>): Nest:https://github.com/nestjs/nest Nesk:https://git ...

  9. 安装nodeJs静态服务器(NodeJs Express MVC 框架)

    安装 NodeJs Express MVC 框架   新建项目文件夹   打开cmd 执行以下操作:   一.使用Express框架 1)安装express3 $: npm install -g ex ...

随机推荐

  1. java知识点复习(1):

    1.java整形变量078:在java数字里数字表达式前面加上0表示8进制,因为8进制里表示数字只有0-7,所以这里的表达式有错误.相对而言,077就是合法的,转换成10进制就是63(7*8+7=63 ...

  2. 11 Python之初识函数

    ---恢复内容开始--- 1. 什么是函数? f(x) = x + 1 y = x + 1 函数是对功能或者动作的封装 2. 函数的语法和定义 def 函数名(): 函数体 调用: 函数名() 3. ...

  3. 使用python的selenium库刷超星网课

    网课很多看不完呀 所以动手做了一个基础的自动答题和下一节的程序 用到了python 3 selenium Chrome 如何自动化Chrome?https://www.cnblogs.com/eter ...

  4. 使用redislive监控redis

    redis监控工具redislive的安装 1. pip安装 如果主机没有pip先安装pip工具 wget --no-check-certificate https://github.com/pypa ...

  5. Go语法的基本使用(三)

    // 长度 vs 容量. // 长度是目前里面有几个值 // 容量是最多能放多少个值 func main(){ var a =make(chan int,4) a<-1 a<-2 a< ...

  6. Cocos Creator 热更新文件MD5计算和需要注意的问题

    Creator的热更新使用jsb.热更新基本按照 http://docs.cocos.com/creator/manual/zh/advanced-topics/hot-update.html?h=% ...

  7. Dubble 01 架构模型&start project

    Dubbo 01 架构模型 传统架构 All in One 测试麻烦,微小修改 全都得重新测 单体架构也称之为单体系统或者是单体应用.就是一种把系统中所有的功能.模块耦合在一个应用中的架构方式.其优点 ...

  8. Java语言基础(3)

    1 算术运算符:+,-,*(乘法),/(除法),%(求余数) 1)只有相同类型的数据才可以进行算术运算,经常使用到自动类型转换和强制类型转换,把参与运算的数据转换为同一个类型,然后再进行算术运算. 案 ...

  9. 标准C语言(3)

    操作符用来描述对数字的处理规则根据操作符所需要配合的数字个数把操作符分为单目操作符,双目操作符和三目操作符 C语言里用+,-,*和/表示加减乘除四则运算,它们都是双目操作符,如果参与除法计算的两个数字 ...

  10. 关于session失效的问题(内网IP与外网IP)

    参考: 测试环境测试支付宝支付,以ip方式访问,而支付宝支付成功后回调地址配置的是域名形式的.造成支付成功后访问成功页面进入了登录页面 同一个网站,通过域名登录和通过IP登录,所产生的session是 ...