当前位置: 首页 > news >正文

做课件需要的纯音乐网站外链link

做课件需要的纯音乐网站,外链link,高端大气的广告公司名字,wordpress引用Express 框架概述 Express 是一个基于 Node.js 平台的快速、开放、极简的Web开发框架。它本身仅仅提供了 web 开发的基础功能,但是通过中间件的方式集成了外部插件来处理HTTP请求,例如 body-parser 用于解析 HTTP 请求体,compression 用于压…

Express 框架概述

Express 是一个基于 Node.js 平台的快速、开放、极简的Web开发框架。它本身仅仅提供了 web 开发的基础功能,但是通过中间件的方式集成了外部插件来处理HTTP请求,例如 body-parser 用于解析 HTTP 请求体,compression 用于压缩 HTTP 响应,cookie-parse 用于解析 cookie 数据,cors 用于处理跨域资源请求,Morgan 用于 http 请求日志。这使得 Express 本身变得更加灵活和简单。

Express 官方网站:https://expressjs.com/

在这里插入图片描述

下载安装 Express 框架模块包

npm install express

Express 初体验案例

const express = require('express')
const app = express()app.get('/', function (req, res) {res.send('Hello World')
})app.listen({port: 3000, hostname: '127.0.0.1'}, () => {console.log('http://127.0.0.1:3000/')
})

获取 request 请求数据

app.get('/index', function (req, res) {console.log(req.method)console.log(req.url)console.log(req.httpVersion)console.log(req.headers)console.log(req.path)console.log(req.query)console.log(req.ip)console.log(req.params)
})

response 响应配置

Node.Js 原生响应 response

app.get("/response", (req, res) => {res.statusCode = 200;res.statusMessage = 'love'res.setHeader('xxx', 'yyy')res.write('hello express')res.end('response')
})

Express 响应 response

app.get("/response", (req, res) => {res.status(200);res.set('aaa', 'bbb')res.send('hello Express')
})

配置路由参数

app.get("/data/:id", (req, res) => {console.log(req.params.id)
})

重定向 redirect

app.get("/redirect", (req, res) => {res.redirect("http://www.baidu.com/")
})

下载服务器资源 download

app.get("/download", (req, res) => {res.download(__dirname + "/test.mp4")
})

响应 Json 格式数据

app.get("/json", (req, res) => {res.json({name: 'helloworld', password: "helloworld"})
})

测试结果

在这里插入图片描述

Express 中间件

在 Express 中, 使用 app.use 或者 app.METHOD 注册的中间件叫做应用级中间件。

全局中间件:给每个路由规则都添加中间件处理函数

app.use(function (req, res, next) {console.log('我是一个全局中间件, 影响所有的路由规则')
})

局部中间件:给某一个特定的路由规则添加中间件处理函数

app.use('/users', function (req, res, next) {console.log(`这里是一个局部中间件, 只影响/users路由`)next()
})

路由中间件

express.Router()对象也可以注册中间件。使用 router.use 或者 router.METHOD 注册的中间件叫做路由级中间件。

var app = express()
var router = express.Router()router.use(function (req, res, next) {console.log('Time:', Date.now())next()
})
router.get('/users/', function(req, res) {res.send('hello')
})

静态资源中间件

如果要在网页中加载静态文件(比如样式表、图片等)就需要另外指定一个存放静态文件的目录。注意 index.html 文件是默认打开的资源。如果静态资源与路由规则同时匹配,谁先匹配谁就响应。路由响应动态资源,静态资源中间件响应静态资源。

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

获取请求体数据

解析 querystring 请求体数据

const bodyparser = require('body-parser')
app.use(bodyparser.urlencoded({ extended: true }))
app.post("/post", (req, res) => {console.log(req.body)
})

解析 json 请求体数据

const bodyparser = require('body-parser')
app.use(bodyparser.json())
app.post("/post", (req, res) => {console.log(req.body)
})
{ username: '123', password: '123' }

Express.Router

Express 4.0 路由器功能成了一个单独的组件Express.Router。它好像小型的 express 应用程序一样,有自己的use、get、param 和 route 方法。

首先,Express.Router 是一个构造函数,调用后返回一个路由器实例。然后,使用该实例的HTTP动词方法,为不同的访问路径,指定回调函数;最后,挂载到某个路径。

var router = express.Router();router.get('/', function(req, res) {res.send('首页');
});router.get('/about', function(req, res) {res.send('关于');
});app.use('/', router);

定义了两个访问路径,然后将它们挂载到根目录。如果最后一行改为app.use(‘/app’, router),则相当于为/app和/app/about这两个路径,指定了回调函数。这种路由器可以自由挂载的做法,为程序带来了更大的灵活性,既可以定义多个路由器实例,也可以为将同一个路由器实例挂载到多个路径。

app.route 实例

假定 app 是 Express 的实例对象,Express 4.0为该对象提供了一个route属性。app.route 实际上是 express.Router() 的缩写形式,除了直接挂载到根路径。因此对同一个路径指定 get 和 post 方法的回调函数,能写成链式形式。

app.route('/login').get(function(req, res) {res.send('this is the login form');}).post(function(req, res) {console.log('processing');res.send('processing the login form!');});
http://www.qdjiajiao.com/news/12937.html

相关文章:

  • 整站优化多少钱新手怎么引流推广
  • 品牌推广网站如何做青岛seo排名收费
  • 在自己网站建立自己的外链中文搜索引擎排行榜
  • 云南做网站要多少钱自己如何制作一个网站
  • 如何向百度提交网站地图宝鸡网站开发公司
  • div做网站网站优化排名操作
  • 西安网站模板建站长沙seo男团
  • 怎么做网站图标搜索关键词排名查询
  • 选择邯郸网站制作网站关键词优化价格
  • 哪家公司做网站网站制作软件
  • 旅游网站建设课程设计小程序推广引流
  • 策划公司主要做什么seo百度排名优化
  • 苏小小移动网站搜索引擎优化网站排名
  • 做彩票网站是违法的吗培训机构网站
  • 有域名有服务器怎么建站seo营销培训咨询
  • 公司网站外包建设没有源代码百度seo指数查询
  • 佛山专业网站开发公司seo优化方案策划书
  • 做网站能赚多少钱公司员工培训方案
  • 深圳网站外包提高工作效率的重要性
  • 做详情页网站最近发生的热点新闻事件
  • 电器工程东莞网站建设淘宝直通车推广怎么收费
  • 影视网站建设要多少钱搜索引擎优化技术有哪些
  • 做竞价要会做网站吗十大it教育培训机构排名
  • 别人能打开的网站我打不开制作自己的网站
  • 网站开发论文中的开发环境网站模板大全
  • 最近的上海爆发病毒重庆seo报价
  • 网站制作模板北京枫树seo
  • 大连网站开发工资网络推广公司服务内容
  • bootstrap 网站登录模板百度站长链接提交
  • 外贸网站建设推广公司价格百度关键词推广一年多少钱