Nodejs后端框架搭建(express)

Nodejs后端框架搭建(express)文章目录1.node简介2.Express简介3.项目初始化4.Express三大基础概念(扩展)1.node简介Node是一个基于V8引擎的Javascript运行环境,它使得Javascript可以运行在服务端,直接与操作系统进行交互,与文件控制、网络交互、进程控制等2.Express简介express是一个轻量级的NodeWeb服务端框架,同样是一个人气超高的项目,它可以帮助我们快速搭建基于Node的Web应用3.项目初始化1.创建项目首先你得创

大家好,又见面了,我是你们的朋友全栈君。

1.node简介

Node 是一个基于 V8 引擎的 Javascript 运行环境,它使得 Javascript 可以运行在服务端,直接与操作系统进行交互,与文件控制、网络交互、进程控制等

2.Express 简介

express 是一个轻量级的 Node Web 服务端框架,同样是一个人气超高的项目,它可以帮助我们快速搭建基于 Node 的 Web 应用

3.项目初始化

1.创建项目
首先你得创建项目的根目录,然后输入下面命令初始化项目:

npm init -y

2.安装依赖

npm i express --save

3.创建app.js

const express = require('express')

// 创建 express 应用
const app = express()

// 监听 / 路径的 get 请求
app.get('/', function(req, res) { 
   
  res.send('hello node')
})

// 使 express 监听 5000 端口号发起的 http 请求
const server = app.listen(5000, function() { 
   
	console.log("服务器已启动,监听5000端口");
})

4.启动服务器

	node app.js

此时,在浏览器输入localhost:5000即可访问服务器。

4.Express三大基础概念(扩展)

1.中间件

中间件是一个函数,在请求和响应周期中被顺序调用

实例:

const myLogger = function(req, res, next) { 
   
  console.log('myLogger')
  next()
}

app.use(myLogger)

提示:中间件需要在响应结束前被调用。

2.路由

应用如何响应请求的一种规则

示例:
1.响应 / 路径的 get 请求:

app.get('/', function(req, res) { 
   
  res.send('hello node')
})

2.响应 / 路径的 post 请求:

app.post('/', function(req, res) { 
   
  res.send('hello node')
})

规则主要分两部分:

请求方法:get、post…
请求的路径:/、/user、/.*fly$/…

3.异常处理:

通过自定义异常处理中间件处理请求中产生的异常

app.get('/', function(req, res) { 
   
  throw new Error('something has error...')
})

const errorHandler = function (err, req, res, next) { 
   
  console.log('errorHandler...')
  res.status(500)
  res.send('down...')
}

app.use(errorHandler)

使用时需要注意两点:

  • 参数一个都不能少,否则会被视为普通的中间件
  • 中间件需要在请求之后引用

如果想要学习更多关于nodejs写接口可以看我 这篇博客

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/142744.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Linux中公钥和私钥原理

    Linux中公钥和私钥原理原文 公钥和私钥原理一直以来对公钥和私钥都理解得不是很透彻 感觉到模棱两可 心里直打鼓呢 公钥怎么会事 私钥怎么会事 工作原理是怎么的 今天在网上找了半天 通过查看大家对这个密钥对的理解 总算弄清楚了 咱就把我的心得写出来给大家对密钥对有疑问的同志们看看 nbsp nbsp nbsp nbsp nbsp nbsp 公钥和私钥就是俗称的不对称加密方式 是从以前的对称加密 使用用户名与密码 方式的提高 我用电子邮件的方式说明一下原理 nbsp nbsp nbsp

    2025年8月18日
    3
  • token实现验证登录(token如何使用)

    1.场景还原可能还有很多小伙伴对token概念朦朦胧胧,今天笔者以项目中的用户登录的token验证需求跟大家讲讲其中的来龙去脉,希望能够理清大伙的思路。2.需求分析这个需求可能早已是老生常谈,但我觉得它永远也不会过时①谷歌浏览器:login.html—->index.html;②然后复制index.html的地址在IE浏览器地址栏上,这时普遍网站都会使访问界面直接

    2022年4月14日
    290
  • 点滴的积累—J2SE学习小结

    点滴的积累—J2SE学习小结

    2021年12月14日
    44
  • densenet详解_resnet详解

    densenet详解_resnet详解本文主要介绍近几年效果比较好的DenseNet网络并代码实现。

    2022年9月29日
    2
  • 旌扬机器人_“http://club.liangchanba.com/”搜索蜘蛛、机器人模拟抓取结果–站长工具…

    旌扬机器人_“http://club.liangchanba.com/”搜索蜘蛛、机器人模拟抓取结果–站长工具…量产部落_量产吧论坛_量产之家_量产网_U盘之家_固态硬盘之家_U盘量产工具_SSD量产工具_固态硬盘开卡软件-提供量产工具和相关资料下载-量产吧论坛-专业U盘/SSD量产交流网站量产部落,量产吧论坛,量产之家,量产网,U盘之家,固态硬盘之家,U盘量产工具,SSD量产工具,固态硬盘开卡软件量产部落(LCB.CLUB)提供量产工具和相关资料下载请登录后使用快捷导航没有帐号?加入部落…

    2022年5月31日
    32
  • vue自定义组件封装_vue组件的双向绑定实现

    vue自定义组件封装_vue组件的双向绑定实现vue组件封装,vueelementui组件封装,vue图片上传,elementui图片上传

    2022年9月23日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号