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服务器步骤:
- 加载 express 模块
- 创建 express 服务器
- 开启服务器
- 监听浏览器请求并进行处理
启动服务步骤示例
启动服务方式一:
启动服务方式二:
启动服务-显示效果
// 使用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或接口', 处理函数);
总结:
- 使用express构造服务器也是4步流程:
① 加载express模块 const express = require('express'); ② 创建express服务器 const app = express(); ③ 开启express服务器 app.listen(3000, () => {}) ④ 注册服务器事件 app.get(url, callback) app.post(url, callback)
- 注册服务器事件有两个方法: app.get() 和 app.post()
get方法用来接收get请求,浏览器地址栏发起的请求都是get请求 post方法用来接收post请求,接收post表单提交的请求
- express框架封装了一些额外的API(例如:send),可以让我们更方便的构造Web服务器
3.1 )使用send方法响应数据的话,会自动设置content-type。但有时候会错误设置
3.1 )注意send不能直接响应数字,需要加引号,否则会将数字当做响应状态码处理
- 浏览器请求的每一个url地址都会由一个独立方法接收并处理,没有了 if … else if … else 这样的分支,程序结构
更加清晰
5)sendFile(文件路径); – 功能是读取文件,并将读取到的结果响应给浏览器。它的参数必须是绝对路径。
到此这篇Node学习(五)01-express框架——使用express搭建web服务器 & 启动命令之node或nodemon+空格+文件相对路径 __dirname指当前文件所在文件夹的绝对路径的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/hd-nodejs/10851.html