Node.js Express 框架

express 是什么?

安装express: cnpm install express
express 是一些开发基于nodejs的核心模块 http 模块进行额外的封装一个的一个 web 开发框架,使用 express 可以更加快速和方便开发web项目。

官网:https://www.expressjs.com.cn/

如何使用?https://www.expressjs.com.cn/starter/hello-world.html

Request 对象 :request 对象表示 HTTP 请求,包含了请求查询字符串,参数,内容,HTTP 头部等属性。

Response 对象 :response 对象表示 HTTP 响应,即在接收到请求时向客户端发送的 HTTP 响应数据。

//1.引入express框架
const express = require('express');

//2. 创建express实例app 与http.createServer() 类似
const app = express();
const port = 3000;

//3. app请求方式(get post)
//请求方式(第一个参数,代表的url后面的路径部分,一般我们叫做 pathname) ?name=caoyang&age=12 一般我们把这种key=value&key1=value1叫做查询字符串
// #hash 这种一般我们叫做hash 或者锚点,一般用于本页面的跳转(小说网站)
app.get('/', (req, res) => {
    
    // 1、write返回, 数据没有经过处理, 返回了什么就是什么, 
    //res.write('hi node.js!');

    //2、如果服务器端没有数据返回到客户端 那么就可以用 res.end
    //res.end();
    
    //3、 如果 服务器端有数据返回到客户端 这个时候必须用res.send ,不能用 res.end
    res.send('Hello World!');

    //但是send 返回时, 数据被处理了, 在请求头中被添加了, context-type  返回类型, 
    // send 类似 http模块里面的wirte 方法,可以给浏览器进行响应,这个方法不是http模块自带的,是 express 作者帮我们封装的
})

app.listen(port, () => {
    console.log(`Example app listening on port ${port}!`)
})

总结:我们把这种请求方式+pathname形成的这种规则,我们称之为 路由。 多条规则形成的列表,我们称之为路由表。

静态文件

Express 提供了内置的中间件 express.static 来设置静态文件。

app.use('/public', express.static('public'));

nodemon 包:可以实现当我们修改了代码之后,不需要手工重启,即可显示最新的效果

npm install -g nodemon 工具包,全局安装

yarn global add nodemon
注意:yarn安装的时候,需要使用 global 关键字

注意:部门电脑的同学,安装全局包的时候,如果是启动普通黑窗口,有可能安装不成功,报一个类似 permission deny. 以超级管理员的方式启动黑窗口

如何使用?

只要把原先使用 node 的地方,换成 nodemon 即可
// node app.js —> nodemon app.js

请求文件:

const express = require('express');
const url = require('url');// 专门负责处理url部分
const path = require('path');

const app = express()
const port = 3000

app.get('/register', (req, res)=> {
    // 注意:返回的文件需要使用绝对路径
    //path.resolve() 方法会把一个路径或路径片段的序列解析为一个绝对路径。
    let absPath = path.resolve(__dirname, './views/register.html');
    res.sendFile(absPath, 'utf-8');

});

// 4. 监听端口
app.listen(port, () => console.log(`Example app listening on port ${port}!`))

console.log(app);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值