Express框架是什么

Express是一个基于Node平台的web应用开发框架,它提供了一系列的强大特性,帮助你创建各种Web应用,我们可以使用npm install express 命令进行下载。
Express也是node框架的第三方模块,它的作用是专门用来创建网站应用,因为使用原生js创建网站应用代码比较复杂比较底层,比如实现路由功能需要对请求地址进行解析还有进行各种判断,代码过于繁琐不利于阅读。
实现静态资源访问功能还需要使用文件读取模块对文件的内容进行读取,还需要设置响应内容的类型,但这实际上跟网站本身业务逻辑没有什么关系还有接受post请求参数的代码,需要对请求对象添加事件手动拼接请求参数对请求参数的格式进行转化都是比较复杂并且跟业务逻辑没有什么关系。基于原生nodejs实现网站应用比较困难,express框架就诞生了。

Express 框架特性

  • 提供了方便简洁的路由定义方式
    简洁的路由定义方式就是使用route这个第三方模块定义路由的方式,route第三方模块实际上就是express框架当中抽取出来。

  • 对获取HTTP请求参数进行了简化处理
    框架提供更加简洁的方式去接受请求参数也就是说使用express框架,不再需要对请求参数 的格式进行转化,框架让我们拿到的直接就是对象类型,不需要对请求对象添加data事件以及then事件。框架内部在接收完请求参数并处理完成以后,将参数作为请求对象的属性让我们直接获取。

  • 模版引擎支持程度高,方便渲染动态HTML页面
    框架虽然没有提供内置的模版引擎,但是对市面上各种模版引擎支持程度是非常高的也就是框架可以非常容易同模版引擎协同工作,方便开发者进行项目开发。

  • 提供了中间件机制有效控制HTTP请求
    框架提供了中间键机制能够让我们对请求进行精确地控制,所谓中间件可以简单理解为对请求的拦截。

  • 拥有大量第三方中间件对功能进行扩展
    正是有了中间件这个强大的功能,相当于对外界提供了处理请求的接口。除了官方提供的处理请求的中间件以外,还有大量非官方的中间件,基于框架还有其他的插件可以让我们实现各种功能,就像使用JQuery也有大量的插件一样可以让我们以非常少的代码做出非常强大的功能

原始Node.js 与express框架对比路由

左边原生nodejs需要对请求进行解析,还要判断请求方式以及请求地址光是判断代码就够让人眼花缭乱了。
右边Express框架实现的代码,通过get方法和post方法区分了不同的请求方式再通过参数的形式区分请求地址,用express框架写的路由不但清晰而且易读,不管从代码量还是代码的可阅读性上,Express框架实现的代码就是比Node.js 看起来更加的简洁和美观。

原始Node.js 与express框架对比获取请求参数

使用原生node.js接受请求参数需要对请求地址进行处理,需要添加事件还需要手动去拼接参数,使用框架去接受请求参数只需要获取请求对象下面的属性就可以了,比如get参数用req.query获取,post请求参数用req.body去获取就可以。

// 引入express框架 不用引入http模块里的createServer方法啦
const express = require('express')
// 创建网站服务器
const app = express();
// 监听端口
app.get('/',(req,res) => {// send()// 1.send()方法内部会检测响应内容的类型// 2.send方法会帮我们自动检测HTTP状态码// 3.send方法会帮我们设置响应内容的类型以及编码res.send('Hello.Express');
})
app.get('/',(req,res) => {// send()// 1.send()方法内部会检测响应内容的类型// 2.send方法会帮我们自动检测HTTP状态码// 3.send方法会帮我们设置响应内容的类型以及编码res.send('Hello.Express');
})
app.get('/list', (req,res) =>{res.send({name:'张三', age:20})
})
app.listen(3000);
console.log('网站服务器启动成功');



Express框架简介相关推荐

  1. Express框架简介(详细)

    下面是对Express框架的简单介绍,希望可以帮助到有需要的小伙伴~ Express框架是什么 Express是一个基于Node平台的web应用开发框架,它提供了一系列的强大特性,帮助你创建各种Web ...

  2. Express框架简介、express使用模块引擎、模式数据

    Express简介: 原生的http不足以应对我们的开发需求,所以我们需要使用框架来加快我们的开发,这里推荐expressjs,其官网:expressjs.com,中文文档推荐:http://java ...

  3. Node 笔记肆章 Express框架

    1. Express框架简介及初体验 1.1 Express框架是什么 Express是一个基于Node平台的WEB应用开发框架,它提供了一系列的强大特性,帮助你创建各种WEB应用.我们可以使用 np ...

  4. 使用实例展示Express框架app函数的详解

    0.Express框架简介 Express是Node.js中最受欢迎的Web应用程序框架之一.Express提供了许多有用的功能,使开发Web应用程序变得更加容易和高效. 以下是Express框架的一 ...

  5. Node.js学习笔记(七)#Express框架

    目录 一.Express框架简介 二.安装和使用 1.安装 2.用express创建基本Web服务器 三.Express路由 1.路由概念 2.创建基本路由 ①.创建一个简单的get路由 ② 创建一个 ...

  6. 渲染静态页面、get请求、post请求、express框架、路由、中间件

    1. 渲染静态页面 const http = require('http'); const fs = require('fs'); const url = require('url'); const ...

  7. Node 简介、模块、模板引擎、NPM、文件操作、缓冲区、文件流、网络操作、Express框架

    一.Node简介 1.1 客户端的JavaScript是怎样的 问题 答 什么是 JavaScript 脚本语言 运行在浏览器中 一般用来做客户端页面的交互(Interactive) JavaScri ...

  8. Node的Web应用框架Express的简介与搭建HelloWorld

    场景 Express Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具.使用 Express 可以快速地 ...

  9. NodeJs——(14)express框架的send()方法简介

    (35)express框架的send方法 ①send方法用的还挺多的,因此需要明确其作用: ②原型是: res.send([body|status], [body]) 即既可以直接发送内容,也可以第一 ...

最新文章

  1. Webpack-IE低版本兼容指南
  2. 艾伟:【翻译】使用ASP.NET 2.0记录错误
  3. 2015年去哪儿网Qunar面试题
  4. 安装keras and theano于google colab上
  5. 软件工程课程学生信息
  6. svn: Can't open file '/a/b/db/txn-current-lock': Permission denied
  7. 美团AI全景图:吃喝玩乐背后的黑科技
  8. shell两个数字相乘_使用8086微处理器将两个16位数字相乘而不带进位
  9. CSS 匿名文本和匿名框
  10. 【Flink】Flink 报错 Writing records to streamload failed
  11. (哈工大)计算机网络体系结构——OSI、TCP/IP、5层模型
  12. EditText属性设置
  13. 蛋白质组学两个定量方法(iBAQ和LFQ)的区别及常见的标准化方法
  14. CDR真实图片转水墨画效果制作教程
  15. 带你读懂Pinbar交易信号
  16. 2016年linux认证考试,2016年Linux认证考试模拟练习及答案
  17. php 可以将图片分类吗,PHP图片处理教程.ppt
  18. 一句话理解:谐振腔工作原理
  19. 接口测试—-工具篇,实现接口自动化
  20. 鼎新TIPTOP GP5.25鼎捷易拓GP5.25视频教程26模块操作及开发

热门文章

  1. selenium 无头模式截屏
  2. python——tensorflow使用和两层全连接神经网络搭建
  3. 程序员前世今生,从门外汉到菜鸟,再到独当一面,再到思变转行
  4. JAVA在线教育视频点播学习系统毕业设计 开题报告
  5. 君澜入驻上饶,打造动物主题休闲度假体验
  6. 使用C#实现DHT磁力搜索的BT种子后端管理程序+数据库设计(开源)
  7. vue项目实现单/多文件下载和打包压缩下载
  8. 【在ubantu20.04上安装google chrome】
  9. qtableview选中第一行时表头会变色_亲民的“网红潜水表”精工鱼罐头 Prospex,你会选择吗?...
  10. android 代码删除快捷方式,Android创建快捷方式以及删除快捷方式