当前位置:网站首页 > Node.js开发 > 正文

Node学习(五)01-express框架——使用express搭建web服务器 & 启动命令之node或nodemon+空格+文件相对路径 __dirname指当前文件所在文件夹的绝对路径

Node学习(五)01-express框架——使用express搭建web服务器 & 启动命令之node或nodemon+空格+文件相对路径 __dirname指当前文件所在文件夹的绝对路径

2. express框架

2.1 express 介绍

  • Express 是一个第三方模块,用于搭建服务器
  • Express 是一个基于 Node.js 平台,快速、开放、极简的 web 开发框架
  • express保留了http模块的基本API,也就是说使用express时也能使用req和res对象
  • express还额外封装了一些新方法,能让我们更方便的搭建服务器
  • express提供了中间件功能,其他很多强大的第三方模块都是基于express开发的
  • Express 官网
  • Express 中文文档(非官方)
  • Express GitHub仓库

2.2 使用Express构造Web服务器

使用Express构建Web服务器步骤:

  1. 加载 express 模块
  2. 创建 express 服务器
  3. 开启服务器
  4. 监听浏览器请求并进行处理

启动服务步骤示例

启动服务方式一:

在这里插入图片描述

启动服务方式二:

在这里插入图片描述

启动服务-显示效果

在这里插入图片描述

// 使用express 搭建web服务器 // 1) 加载 express 模块 const express = require('express'); // 2) 创建 express 服务器 const app = express(); // 3) 开启服务器 app.listen(4000, () => console.log('express服务器开始工作了')); // 4) 监听浏览器请求并进行处理 app.get('GET请求的地址', 处理函数); 或 app.post('POST请求的地址', 处理函数); 

具体代码:02 - express搭建服务器 文件夹中

// 1) 加载 express 模块 const express = require('express'); // 2) 创建 express 服务器 const app = express(); // 3) 监听端口,开启服务器 app.listen(3000, () => console.log('使用express搭建的服务器启动了')); // 4) 监听浏览器请求并进行处理 // 4.1) 如果是get方式的请求 // app.get('请求的url或接口', 处理函数); // 处理浏览器的index.html请求 app.get('/index.html', (req, res) => { 
    // 使用express提供的新方法,做出响应 // res.send('hello,我是服务器'); // 有中文,也能正常显示 // res.sendFile(文件的绝对路径); // __dirname指的是当前文件所在文件夹的绝对路径 res.sendFile(__dirname + '/manager/index.html'); }); // 4.2) 如果是Post请求 // app.post('请求的url或接口', 处理函数); 

总结:

  1. 使用express构造服务器也是4步流程:
① 加载express模块 const express = require('express'); ② 创建express服务器 const app = express(); ③ 开启express服务器 app.listen(3000, () => {}) ④ 注册服务器事件 app.get(url, callback) app.post(url, callback) 
  1. 注册服务器事件有两个方法: app.get() 和 app.post()
get方法用来接收get请求,浏览器地址栏发起的请求都是get请求 post方法用来接收post请求,接收post表单提交的请求 
  1. express框架封装了一些额外的API(例如:send),可以让我们更方便的构造Web服务器

​ 3.1 )使用send方法响应数据的话,会自动设置content-type。但有时候会错误设置

​ 3.1 )注意send不能直接响应数字,需要加引号,否则会将数字当做响应状态码处理

  1. 浏览器请求的每一个url地址都会由一个独立方法接收并处理,没有了 if … else if … else 这样的分支,程序结构
    更加清晰

5)sendFile(文件路径); – 功能是读取文件,并将读取到的结果响应给浏览器。它的参数必须是绝对路径

到此这篇Node学习(五)01-express框架——使用express搭建web服务器 & 启动命令之node或nodemon+空格+文件相对路径 __dirname指当前文件所在文件夹的绝对路径的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • Node学习(五)021-处理静态资源——中间件是express最大特色-app.use() & 有三个基本参数req、res、next & 自定义中间件处理静态资源文件-sendFile异步读取文件2024-12-01 11:54:05
  • Node学习(八)01-Node中的模块化——一个js文件就是一个模块& js中声明的属性和方法挂载global对象下则是全局作用域&module.exports导出属性和方法&require导入模块2024-12-01 11:54:05
  • Node学习(八)02-Node中的模块化——用module.exports实现模块化-封装并导出db.js模块之mysql增删改查& 步骤之连服务器、键值照应、封装导出模块、导入模块并打印服务器数据2024-12-01 11:54:05
  • Node学习(九)023-管理系统之添加英雄——文件上传-multer第三方模块之multer简介、multer配置、multer使用 & 使用myupload.single() 方法作为接口的中间件2024-12-01 11:54:05
  • Node学习(九)061-管理系统之登录和注册——md5加密 & 前端注册成功跳转登录页 & 前端登录成功跳转首页 & node服务器之post接口写法2024-12-01 11:54:05
  • Node学习(四)-npm概述——使用npm安装第三方模块之全局安装、本地局部安装2024-12-01 11:54:05
  • node-sass安装不上的问题2024-12-01 11:54:05
  • 使用node自动化创建文件及其模板2024-12-01 11:54:05
  • mac上nvm切换node版本无效2024-12-01 11:54:05
  • 使用git commit时‘“node“‘ 不是内部或外部命令,也不是可运行的程序2024-12-01 11:54:05
  • 全屏图片