基于node.js的Express框架介绍(前端同学写接口,让后端同学没接口可写)
2021/9/14 20:05:08
本文主要是介绍基于node.js的Express框架介绍(前端同学写接口,让后端同学没接口可写),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Node.js® 是一个基于 Chrome V8 引擎 的 JavaScript 运行时,它提供了许多基础的功能和 API,而基于 Node.js,程序员实现了很多强大的工具和框架。总之,Node.js 是大前端时代的“大宝剑”,有了 Node.js 这个超级 buff 的加持,前端程序员的行业竞争力会越来越强!
-
后端API接口。基于Node.js环境 + Express框架,
-
桌面应用。基于Node.js环境 + Electron 框架
-
操作数据库。基于Node.js环境 + MySql包 读写和操作数据库
-
实用的命令行工具。基于Node.js环境,实现的 vuecli,webpack等
-
etc...
Express 是一个基于 Node.js 平台,快速、开放、极简的 web 开发框架
-
web 开发: 对不同的请求能够显示页面;提供接口服务;
-
框架是一个半成品,用来快速解决一类问题;框架:bootstrap, lay-ui, express, vue;
-
库就是工具集,通过调用api来完成具体的功能。 库:zepto.js , jQuery, day.js, , react ,underscore, lodash, art-template, axios, echart.....
-
对于node.js来说,Express 是一个第三方模块,有丰富的 API 支持,强大而灵活的中间件特性
-
Express 不对 Node.js 已有的特性进行二次抽象,只是在它之上扩展了 Web 应用所需的基本功能
-
参考链接:Express 官网 Express 中文文档(非官方) Express GitHub仓库
运行express程序
expresss 是一个第三方模块(在npm上可以下载),在使用它之前要先去下载它,在下载包之前要先创建项目,并通过终端命令npm init 创建package.json文件(终端命令的使用可参考本人之前的文章)。
注意:
-
项目目录名字不要取中文,也不要取
express
-
如果安装不成功:
-
换个网络环境
-
运行下
npm cache clean -f
,再重新运行下载命令试试
-
基本使用
// 加载 Express const express = require('express') // 1. 调用 express() 得到一个 app //app是 express 实例 // 类似于 http.createServer() const app = express(); // 2. 静态资源托管 app.use(express.static('public')) // 3. 监听端口号,启动 Web 服务 app.listen(3000, () => console.log('app listening on port 3000!'))
路由和接口
路由(Routing)是一组映射关系。它约定了当一个特定的 HTTP 方法(GET、POST 等)访问某个 URL(或者叫路径标识)时,服务器如何响应,而接口就是一种特殊的路由。
- 写get接口
- 要求
//---- 不传入id ------------- // localhost:8080/api/getbooks { "status": 0, //0标识成功,其他失败 "message": "获取图书列表数据成功", //描述信息 "data": [{ //返回数据 "id": 1, //图书id "bookname": "西游记", //书名 "author": "吴承恩", //作者 "publisher": "北京出版社" //出版社 }, { "id": 2, //图书id "bookname": "红楼梦", //书名 "author": "曹雪芹", //作者 "publisher": "大清出版社" //出版社 }] } //---- 传入id ------------- // localhost:8080/api/getbooks?id=1 { "status": 0, //0标识成功,其他失败 "message": "获取图书数据成功", //描述信息 "data": { //返回数据 "id": 1, //图书id "bookname": "西游记", //书名 "author": "吴承恩", //作者 "publisher": "北京出版社" //出版社 } } // localhost:8080/api/getbooks?id=100 { "status": 1, //0标识成功,其他失败 "message": "获取图书数据失败" }
参考代码
const express = require('express') const app = express() let data = { "status": 0, //0标识成功,其他失败 "message": "获取图书列表数据成功", //描述信息 "data": [{ //返回数据 "id": 1, //图书id "bookname": "西游记", //书名 "author": "吴承恩", //作者 "publisher": "北京出版社" //出版社 }, { "id": 2, //图书id "bookname": "红楼梦", //书名 "author": "曹雪芹", //作者 "publisher": "大清出版社" //出版社 }] } let books = [{ //返回数据 "id": 1, //图书id "bookname": "西游记", //书名 "author": "吴承恩", //作者 "publisher": "北京出版社" //出版社 }, { "id": 2, //图书id "bookname": "红楼梦", //书名 "author": "曹雪芹",//作者 "publisher": "大清出版社" //出版社 }] // 定义路由 // app.METHOD(PATH, HANDLER) app.get('/api/getbooks', (req, res) => { //console.log(req.query);//获取参数 if (req.query.id !== undefined) {//如果可以获取到id // 做查询(数组里的find方法,查找首次满足条件的值,并返回值) const ret = books.find(item => item.id == req.query.id) if (ret) { res.json({ "status": 0, //0标识成功,其他失败 "message": "获取图书数据成功", //描述信息 "data": ret }) } else { res.json({ "status": 1, //0标识成功,其他失败 "message": "获取图书数据失败" }) } } else {//如果获取不到id // 返回数据,send也行 res.json(data) } })
post代码见下一篇
这篇关于基于node.js的Express框架介绍(前端同学写接口,让后端同学没接口可写)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-15useCallback教程:React Hook入门与实践
- 2024-11-15React中使用useContext开发:初学者指南
- 2024-11-15拖拽排序js案例详解:新手入门教程
- 2024-11-15React中的自定义Hooks案例详解
- 2024-11-14受控组件项目实战:从零开始打造你的第一个React项目
- 2024-11-14React中useEffect开发入门教程
- 2024-11-14React中的useMemo教程:从入门到实践
- 2024-11-14useReducer开发入门教程:轻松掌握React中的useReducer
- 2024-11-14useRef开发入门教程:轻松掌握React中的useRef用法
- 2024-11-14useState开发:React中的状态管理入门教程