当前位置: 首页 > 后端技术 > Node.js

Express文档(express())

时间:2023-04-03 10:18:11 Node.js

express()创建一个Express应用程序,express()函数是express模块导出的顶层函数。varexpress=require('快递');varapp=express();methodexpress.json([options])此中间件在Expressv4.16.0及更高版本中可用。这是Express中内置的一个中间件功能,用于解析带有JSON负载的传入请求,并且基于body-parser。返回一个只解析JSON的中间件,并且只查看Content-Type标头与类型选项匹配的请求。此解析器接受正文的任何??Unicode编码,并支持gzip的自动解压缩和deflate编码。在中间件(即req.body)之后的请求对象上填充一个新的包含解析数据的body对象,如果没有要解析的body,Content-Type不匹配,或者发生错误,则填充一个空对象({}).由于req.body的形状是基于用户控制的输入,所以这个对象中的所有属性和值都是不可信任的,应该在被信任之前进行验证。例如,req.body.foo.toString()可能会以多种方式失败,例如foo可能不存在或可能不是字符串,toString可能不是函数而是字符串或其他用户输入。下表描述了可选选项对象的属性。属性描述类型默认inflate开启或关闭处理压缩包体,禁用时,压缩包体将被拒绝。booleantruelimit控制最大请求体大小,如果这是一个数字,该值指定字节数;如果是字符串,则将该值传递给bytes库进行解析;混合的“100kb”reviverreviver选项作为第二个参数直接传递给JSON.parse;您可以在JSON.parse的MDN文档中找到有关此参数的更多信息;函数nullstrict启用或禁用仅接受数组和对象;禁用时将接受JSON.parse接受的任何内容;Booleantruetypethis用于确定中间件将解析的媒体类型;该选项可以是字符串、字符串数组或函数;如果不是函数,类型选项直接传递给type-is库,这可以是扩展(如json)、mime类型(如application/json)或带通配符的mime类型(如*/*或*/json);如果是函数,则将类型选项称为fn(req),如果它返回真值,则解析请求其中buf是原始请求体的Buffer;encoding是请求的编码,可以通过抛出错误来中止解析。Functionundefinedexpress.static(root,[options])这是Express内置的中间件函数,提供静态文件,基于serve-static。注意:为获得最佳效果,请使用反向代理缓存来提高服务静态资源的性能。root参数指定从中提供静态资源的根目录,该函数通过将req.url与提供的根目录相结合来确定要提供哪些文件。当找不到文件时,它不会发送404响应,而是调用next()继续下一个中间件,从而允许堆栈和回退。下表描述了选项对象的属性,另请参见下面的示例。属性描述类型默认点文件确定如何处理点文件(以点“.”开头的文件或目录);请参阅下面的dotfilesString"ignore"etag启用或禁用etag生成,注意:express.static始终发送弱ETagBooleantrueextensions设置文件扩展名名称回退:如果未找到文件,则搜索具有指定扩展名的文件并提供找到的第一个文件;例如:['html','htm']与false混合