位置: 编程技术 - 正文

Express.JS使用详解(express.json())

编辑:rootadmin

推荐整理分享Express.JS使用详解(express.json()),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:express的使用,express常用api,express app.js,js中express,express如何使用,js中express,express.js教程,express app.js,内容如对您有帮助,希望把文章链接给更多的朋友!

安装了node(下载)之后, 在你的机器上创建一个目录,开始你的第一个应用程序。

在这个目录中你将定义应用程序“包”,这和任何其他node的包没有什么不同。文件目录中的json文件,明确定义了一个依赖项。你可以用npm命令获取express最新版本,你喜欢这样做,而不是安装“3.x”以外的版本,以防止任何未知的惊喜。

现在,您已经有了一个包。json文件在这个目录你可以使用npm(1)安装这种依赖关系,在这种情况下只需要输入:

一旦npm完成,你就会在/node_modules目录中存有一个你依赖的Express 3.x。您可以用npm ls验证这一点,就像以下代码片段所展示的Express树和自己的依赖关系。

现在来创建应用程序本身!创建一个名为app.js或server.js文件,不论你喜欢哪一个,引入express,然后用express()创建一个新的应用程序:

新应用程序实例可以通过app.VERB()开始定义路线,在这种情况下,通过“Hello World”字符串回应“GET/”请求。req和res是提供给您的完全相同的node对象,因此你可能会调用res.pipe(),req.on('data', callback) 和其他你会做的与Express无关的事情。

Express增强这些对象为你提供更高层次的接口如res.send(),除此之外为你添加内容长度:

现在为连接调用app.listen()方法绑定和监听,接受相同的参数作为节点的net.Server #listen():

使用express(1)来生成应用程序

Express团队维护便捷的项目生成器,命名为express-generator(1)。如果你用npm全局安装express-generator,那么你可以从你电脑的任何地方访问到它:

这个工具提供了一种简单的方法来得到一个应用程序框架,但范围有限,例如,它只支持几个模板引擎,而Express自己事实上支持为node建立任何网站框架模板。可通过help查看:

如果你想生成一个任何情况都支持的应用程序您只需要简单地执行::

像任何其他node的应用程序,您必须安装以下的依赖关系:

然后让我们开始吧。

这是所有你需要让一个简单的应用程序启动并运行。记住,Express不绑定到任何特定的目录结构,这些只是给你一个指导。应用程序结构的选择可在github库中查看 示例 。

错误处理

错误处理中间件定义就像普通中间件,然而必须定义4个参数数量,这是函数签名(err, req, res, next):

虽然强制的错误处理中间件通常不是定义在最后,但在其他app.use()后,其调用如下所示:

在这些中间件的响应是完全任意的。您可能希望回应一个HTML错误页面,一个简单的消息,一个JSON字符串,或任何其他你喜欢的回应。

Express.JS使用详解(express.json())

为构建有组织的和更高层次的框架,你可以定义几个这些错误处理中间件,就像你会定义普通中间件。例如假设您想为XHR请求定义一个错误处理器,除了这些之外,你可能会做的事如下:

在更一般的logErrors可以写请求和错误信息到stderr,loggly,或类似的服务:

clientErrorHandler的定义如下所示,,注意,这个错误将显式地传递到下一个。

以下errorHandler“全方位”实现可以定义为:

用户在线计数

本节详细完整讲解一个(小)应用程序,使用Redis跟踪用户在线数量。首先创建一个包。json文件包含两个附件,一个用于redis客户端,另一个用于Express自己。也确保你已包装了redis并且通过$redis-server运行。

接下来,你需要创建一个应用程序,和一个到redis的连接:

接下来的中间件跟踪在线用户。在这里我们将使用排序集,这样我们通过可以redis查询在线用户,仅需要N毫秒。我们通过时间戳作为成员的“在线标准”。注意, 这里我们使用user-agent字符串代替通常的用户id。

下一个中间件是在最后一刻使用zrevrangebyscore来获取最大在线用户数量,我们总是得到最近在线的用户,他的上限是当前时间戳减去毫秒。

最后,我们通过一个url使用它,并绑定到一个端口!这就完了,在一个新浏览器访问这个应用程序,您会看到在线人数增加。

Expree的反向代理

在反向代理背后使用Expree,如Varnish 或Nginx是微不足道的,然而它需要配置。通过启用“信任代理”设置app.enable(“trust proxy”),Express有一些反向代理的技巧,X-Forwarded - *头字段可能是可信的,否则他们可能很容易被欺骗。

启用该设置有一些微妙的影响。第一个是X-Forwarded-Proto可能被反向代理设定,告诉app那是https或者只是简单的http。这个值由req.protocol反射。

第二个变化是req.ip和req.ips值将填充X-Forwarded-For地址的列表。

调试Express

Express内部使用调试模块记录路径匹配和应用程序模式的信息。要看到这条信息,只要简单设置调试环境变量为express:*,当启动应用程序后,你将在控制台看以调试信息。

运行这个hello world示例将打印以下内容:

另外, 表达可执行(生成器)生成的程序也使用调试模块,默认作用域是my-application调试命名空间。

你可以用以下命令启用这些调试语句

关于调试的更多信息,请参见调试 指南

使用nodejs、Python写的一个简易HTTP静态文件服务器 日常开发过程中,我们经常需要修改一些放在CDN上的静态文件(如JavaScript、CSS、HTML文件等),这个过程中,我们希望能有一种方式将线上CDN的目录映

一行命令搞定node.js 版本升级 node有一个模块叫n(这名字可够短的。。。),是专门用来管理node.js的版本的。首先安装n模块:npminstall-gn第二步:升级node.js到最新稳定版nstable是不是

Google官方支持的NodeJS访问API,提供后台登录授权 安装此库通过npm发布。通过以下命令安装googleapis及其依赖$npminstallgoogleapis完整的API支持列表

标签: express.json()

本文链接地址:https://www.jiuchutong.com/biancheng/370835.html 转载请保留说明!

上一篇:Centos7 中安装 Node.js v4.4.4(安装centos no such device)

下一篇:使用nodejs、Python写的一个简易HTTP静态文件服务器(使用权资产)

  • 不通过税金及附加的科目
  • 小规模纳税人租赁不动产税率
  • 多缴纳了印花税有什么影响
  • 代付的费用收不收手续费
  • 股权投资公司属于金融企业吗
  • 减免税属于政府转移支付吗
  • 外商投资企业退出条件
  • 增值税如何减税
  • 积分兑换礼品需要缴纳个人所得税吗
  • 银行代扣出口快递费用
  • 小规模纳税人租赁发票税率是多少
  • 购买电脑的方案
  • 购买方退货的会计处理
  • 公司无公务用车
  • 融资协议如何缴纳印花税
  • 个人持有原始股要交税吗
  • 进项发票与销项发票差额是企业毛利润吗
  • 发票作废了还能认证吗
  • 采购合同安装服务费审价规定
  • 企业被列为风险纳税人税控开票会显示什么
  • 内销选择性征收关税政策试点
  • 融资性售后回租按什么缴纳增值税
  • 公司注销有哪些原因
  • 实收资本印花税最新规定
  • 发票抬头错了认可怎么办
  • 固定资产发生非正常损失相关题目
  • 应收账款账龄分析简单例题
  • 印花税减免税额需要做账吗
  • 境外投资企业如何交税
  • 财政指标文和拨款流程
  • 筹建期间的广宣费
  • 桌面鼠标右键菜单设置
  • php上传文件参考文件类型
  • 苹果推送最新系统
  • PHP:stream_get_contents()的用法_Stream函数
  • ccs是什么软件
  • ubuntu20.04安装make
  • 下脚料属于什么科目
  • 解聘员工补偿金能拖欠吗
  • 购买仓库计入什么科目
  • php打不开网页
  • 卖出回购证券的钱怎么算
  • 住宿费补贴
  • 开办费计入哪个会计科目
  • 一个简单的后台与数据库交互的登录与注册[sql注入处理、以及MD5加密]
  • MongoDB aggregate 运用篇个人总结
  • 未实际支付的成本能否列支
  • 什么样的公司可以申请破产
  • 单位上社保需要个人提供什么资料
  • 减免税额和抵免税额是什么意思
  • 记账凭证填错了怎么办还没有登记账簿
  • sql server2005查询
  • 会计科目长期待摊费用
  • 建筑安装企业外雇施工人员劳务费用什么做支付凭证
  • 不合格品的处理方式一般包括哪些
  • 本月没有认证的进项税怎么做分录
  • 根据《物业管理条例》的规定,物业服务企业
  • 一正一负发票要做凭证吗
  • 税票名称开错了有影响么
  • sqlserver排序规则怎么看
  • 数据库访问机制
  • u盘pe系统安装步骤
  • apt-get download
  • mac怎么打出@符号
  • 如何用dos破解wifi
  • windows中的hosts文件
  • Android游戏开发读后感
  • python到底怎么学
  • python爬虫入门教程
  • dos命令大全及用法
  • 编程中的python
  • selenium自动化步骤
  • 四种参数传递方式
  • linux使用文本编辑器
  • python去掉末尾的换行符
  • jquery编写页面载入事件
  • 个人所得税怎么换手机号绑定
  • 贵州省国家税务局
  • 四川地方税务局官网首页
  • 亿企代账和云账房哪个好用?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设