我的编程空间,编程开发者的网络收藏夹
学习永远不晚

node有哪些中间件

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

node有哪些中间件

这篇文章给大家分享的是有关node有哪些中间件的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

node中间件有:1、koa-bodyparser;2、koa-body;3、静态资源管理器koa-static;4、cors;5、koa-cors;6、koa-cors2设置请求头等等。

本文操作环境:Windows7系统,nodejs10.16.2版,Dell G3电脑。

node中间件类型:

node中间件就是封装在程序中处理http请求的功能。node中间件是在管道中执行。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。

中间件为主要的逻辑业务所服务,可分为:应用级中间件、路由级中间件、内置中间件、第三方中间件、错误级中间件。

node常用的中间件:

在node的学习过程中积累了许多好用的中间件。这些中间件大部分要个koa配合使用

1、koa-bodyparser

这个插件使用来解析前端post请求带来的参数的

//入口文件
const bodyParser = require('koa-bodyparser');
app.use(bodyParser({//设置可以接收的数据类型
    enableTypes:['json', 'form', 'text']
}))
async function (ctx) {
    console.log(ctx.request.body)
    ctx.req.on('data',(data) => {
        console.log(JSON.parse(data),'文件')
    })
}

在没有引入koa-bodyparser的情况下只能通过ctx.req.on('data',callback)来获取参数

而引入中间件后只要ctx.request.body就可以获取到参数。相比第一种便利很多。

2、koa-body

这个插件是用来获取请求中上传的文件和文件信息比如图片过zip文件

const koaBody    = require('koa-body')
app.use(koaBody({
        multipart: true,
        formidable: {
            maxFileSize: 20 * 1024 * 1024    // 设置上传文件大小最大限制,默认2M
        }
    }))

在请求的处理中就可以直接通过ctx.request.files就能获取到所有上传的文件的信息。

注意!!!用了koa-body就不要在使用koa-bodyparser会冲突导致前端的post请求返回的status码为canceled

3、静态资源管理器koa-static

在本地测试的时候我上传了一张图片,然后将图片地址打印后是一长串的c://.../name/.png,这样虽然在本地能够访问但是如果放到服务器上就行不通了!

通过引入koa-static可以将静态文件地址指定到项目路径上的某个文件夹然后通过koa监听的端口直接http://192.168.0.177:3030/name.png就能访问图片了

const koaStatic  = require('koa-static')
app.use(koaStatic('./public'))//括号中是设置的静态文件路径

4、cors、koa-cors、koa-cors2设置请求头

这几个中间件基本我都是用来配置跨域和请求头的信息

const cors       = require('koa2-cors') 
app.use(cors({
    exposeHeaders: ['multipart/form-data','application/x-www-form-urlencoded']
}))

可以自己设置参数也可以不设置参数直接app.use(cors())就可以跨域。

这里说到跨域就顺便提一提原生node跨域的设置方法(同样可以设置请求头的各种配置)

app.use(async (ctx, next) => {
   ctx.set('Access-Control-Allow-Origin', ctx.headers.origin)//'*'有可能会问题
   ctx.set('Access-Control-Allow-Credentials', 'true')
   ctx.set('Access-Control-Allow-Headers', 'Origin ,multipart/form-data, X-Requested-With, Content-Type, Accept')
   await next()
})

感谢各位的阅读!关于“node有哪些中间件”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

node有哪些中间件

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

php中间件有哪些

摘要:php 中间件是一种拦截和修改请求或响应的组件。流行的 php 中间件包括 laravel、symfony、slim framework、zend framework 和 guzzle 中间件。中间件用途广泛,包括验证、认证、缓存、异
php中间件有哪些
2024-04-26

jspXCMS中Node对象有哪些

这篇文章主要为大家展示了“jspXCMS中Node对象有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“jspXCMS中Node对象有哪些”这篇文章吧。栏目对象。类名:com.jspxcms.
2023-06-26

Node的文件系统有哪些内容

今天小编给大家分享一下Node的文件系统有哪些内容的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、Node的文件系统1、F
2023-06-29

node文件的读写操作有哪些

本文小编为大家详细介绍“node文件的读写操作有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“node文件的读写操作有哪些”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。fs文件系统模块什么是fs文件系统模块
2023-07-04

node.js中间件类型有哪些

node.js中间件类型有哪些?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。概述node中间件就是封装在程序中处理http请求的功能。node中间件是在管道中执
2023-06-14

Linux中常用的中间件有哪些

这篇文章主要讲解了“Linux中常用的中间件有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中常用的中间件有哪些”吧!中间件是为应用提供通用服务和功能的软件。数据管理、应用服务
2023-06-27

什么是node中间件

node中间件主要是指封装http请求细节处理的方法,其本质上就是在进入具体的业务处理之前,先让特定过滤器处理;对于Web应用而言,引入Node中间件可以简化和封装一些基础逻辑处理细节。
2023-05-14

redis中间件的用途有哪些

Redis中间件有多种用途,主要包括以下几个方面:数据缓存:Redis可以作为缓存中间件,将热点数据存储在内存中,提高数据读取速度,减轻数据库负担。分布式锁:Redis可以通过SETNX等命令实现分布式锁,保证多个客户端对共享资源的互斥访问
redis中间件的用途有哪些
2024-04-26

php中间件的用途有哪些

在 PHP 中,中间件(Middleware)的主要用途有以下几个:路由与请求处理:中间件可以用于处理路由和请求,包括验证请求、解析请求参数、处理异常等。它可以在请求到达控制器之前对请求进行预处理,根据需要进行相应的操作,例如验证用户的权限
2023-10-22

编程热搜

目录