Node.js API开发框架----Express

Express简介

express是基于 Node.js 平台,快速、开放、极简的 Web 开发框架,是一个保持最小规模的灵活的 Node.js Web 应用程序开发框架,为 Web 和移动应用程序提供一组强大的功能。
使用Express可以快速地搭建一个完整功能的网站

核心特性

Express框架核心特性

  • 可以设置中间件来响应http请求
  • 定义了路由用于执行不同的http请求
  • 可以通过向模板传递参数来动态渲染html页面

安装Express

npm install express --save

以上命令会将 Express 框架安装在当前目录的 node_modules 目录中, node_modules 目录下会自动创建 express 目录。以下几个重要的模块是需要与 express 框架一起安装的:

  • body-parser — node.js 中间件,用于处理 JSON, Raw, Text 和 URL 编码的数据。
  • cookie-parser —这就是一个解析Cookie的工具。通过req.cookies可以取到传过来的cookie,并把它们转成对象。
  • multer - node.js 中间件—用于处理
    enctype=“multipart/form-data”(设置表单的MIME编码)的表单数据。

常用方法

express()

express()用来创建一个Express的程序。express()方法是express模块导出的顶层方法。

var express = require('express');
var app = express();

利用Express托管静态文件

express.static(root, [options])

express.static是Express中唯一内置的中间件。它以server-static模块为基础开发,负责托管 Express 应用内的静态资源。 参数root为静态资源的所在的根目录,参数options是可选的

/**静态资源文件托管 */
const express = require('express');
const app = express();

app.use(express.static('public'))
//访问方式 localhost:3000/hello.html

//app.use('/abc',express.static('public'))
//访问方式 localhost:3000/abc/hello.html

app.listen(3000,()=>{
    console.log('running...')
})

public文件是自定义的文件夹
在public文件下创建一个hello.html文件,并在浏览器中访问
在这里插入图片描述

如果use()方法中,添加了自定义的路径地址,在浏览器中访问的时候需要在端口号后面加上路径地址

上面展示了打开了html文件,我们同样也可以打开js、css等文件
但是要注意的是这些文件必须要在public文件中
在这里插入图片描述
举例打开js文件,js文件夹下的base.js:

var div = document.createElement('div');
div.innerHTML = '炸鸡';
document.body.appendChild(div);

将base.js文件引入hello.html文件中,并在浏览器中访问
在这里插入图片描述
注意!!!!
如果请求的两个文件夹中有同名的文件,则只会访问前面的文件

//只会访问hello下的文件
app.use(express.static('hello'));
app.use(express.static('public'));

请求方式

HTTP的常用请求方式:

  • post----添加
  • get----查询
  • put----更新
  • delete----删除
const express = require('express');
const app = express();

app.get('/', (req, res) => {
    res.send('get data');
})

// postman 接口测试工具
app.post('/', (req, res) => { 
    res.send('post data');
})

app.put('/', (req, res) => { 
    res.send('put data');
})

app.delete('/', (req, res) => { 
    res.send('delete data');
})

// 响应任何的请求方式
app.use((req, res) => {
    res.send('OK');
})

app.listen(3000, () => {
    console.log('running....');
})

我们可以根据不同的路径,进入不同的页面。
post请求不能直接在页面上直观的显示,我们可以采用接口测试软件POSTMAN进行测试

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Application()

app对象一般用来表示Express程序。通过调用Express模块导出的顶层的express()方法来创建它:

var express = require('express');
var app = express();

app.get('/', function(req, res) {
    res.send('hello world!');
});

app.listen(3000);

app 对象具有以下的方法:

  • 路由HTTP请求;(app.METHOD和app.param)
  • 配置中间件;(app.route)
  • 渲染HTML视图;(app.render)
  • 注册模板引擎;(app.engine)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值