Express 文档(express())

express()

建立一个Express应用程序,express()函数是express模块​​导出的顶级函数。

var express = require('express');
var app = express();

要领

express.json([options])

此中间件在Express v4.16.0及更高版本中可用。

这是Express中的内置中间件函数,它运用JSON有用负载剖析传入的要求,并基于body-parser

返回仅剖析JSON的中间件,并仅检察Content-Type header与type选项婚配的要求,此剖析器接收body的任何​​Unicode编码,并支撑gzip的自动解压和deflate编码。

在中间件(即req.body)以后的request对象上添补包括已剖析数据的新body对象,或假如没有要剖析的body则为空对象({})、Content-Type不婚配、或发作毛病。

因为
req.body的外形基于用户掌握的输入,因而该对象中的一切属性和值都是不可托的,应该在信托之前举行考证。比方,
req.body.foo.toString()能够以多种体式格局失利,比方
foo能够不存在或许能够不是字符串,而
toString能够不是函数,而是字符串或其他用户输入。

下表形貌了可选options对象的属性。

属性形貌范例默许
inflate启用或禁用处置惩罚紧缩的body,禁用时,紧缩的body会被谢绝。Booleantrue
limit掌握最大要求体大小,假如这是一个数字,则该值指定字节数;
假如是字符串,则将值传递给bytes库以举行剖析;
夹杂“100kb”
reviver reviver选项作为第二个参数直接传递给JSON.parse
你能够在有关JSON.parse的MDN文档中找到有关此参数的更多信息;
函数null
strict启用或禁用仅接收数组和对象;
禁用时将接收JSON.parse接收的任何内容;
Booleantrue
type这用于肯定中间件将剖析的媒体范例;
此选项能够是字符串、字符串数组或函数;
假如不是函数,则将type选项直接传递给type-is库,
这能够是扩展名(如json)、mime范例(如application/json),
或带有通配符的mime范例(如*/**/json);
假如是函数,则将type选项作为fn(req)挪用,
假如返回truthy值,则剖析要求
夹杂“application/json”
verify此选项(假如供应)称为verify(req, res, buf, encoding)
个中buf是原始要求体的Buffer
encoding是要求的编码,能够经由过程抛出毛病来中断剖析。
函数undefined

express.static(root, [options])

这是Express中的内置中间件函数,它供应静态文件,基于serve-static

注重:为取得最好效果,请运用反向代办缓存来进步效劳静态资本的机能。

root参数指定从中供应静态资本的根目次,该函数经由过程将req.url与供应的root目次相结合来肯定要供应的文件。当找不到文件时,它不是发送404相应,而是挪用next()继承下一个中间件,许可堆叠和回退。

下表形貌了options对象的属性,另请拜见下面的示例。

属性形貌范例默许
dotfiles肯定怎样处置惩罚dotfiles(以点“.”开首的文件或目次);
请参阅下面的dotfiles
String“ignore”
etag启用或禁用etag天生,注重:express.static老是发送弱ETagBooleantrue
extensions设置文件扩展名回退:假如找不到文件,
搜刮具有指定扩展名的文件并供应找到的第一个文件;
比方:['html', 'htm']
夹杂false
    原文作者:博弈
    原文地址: https://segmentfault.com/a/1190000017543705
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞