http协议

http协议

1. HTTP协议概念

超文本传输协议:规定了如何从网站服务器传输超文本到本地浏览器,它基于客户端服务器架构工作,是客户端(用户)和服务器端(网站)请求和应答的标准。

2. 报文

在HTTP请求和响应的过程中传递的数据块就叫报文,包括要传送的数据和一些附加信息,并且要遵守规定好的格式。

3. 请求报文

方式: GET 请求数据 、 POST 发送数据
请求地址:

app.on('request', (req, res) => {
    req.headers  // 获取请求报文
    req.url      // 获取请求地址
    req.method   // 获取请求方法
});
案例1:获取客户端的请求方式,发送post请求

在这里插入图片描述

当输入网址打开页面的时候为请求数据,所以请求方式为GET。

当把表单的数据提交到这个网址的时候,默认请求方式为GET,如果我们想修改请求方式,需要在表单属性添加method属性,属性值为POST。

如果请求的地址是相同的,但是请求的方式不同,我们可以根据请求的方式响应不同的内容

案例2:获取客户端的请求地址,显示不同页面

在这里插入图片描述

当输入的地址是localhost:3000或localhost:3000/index是显示的内容为home,后面以此类推。
注意:res.end只能出现在最末端,如果出现多个res.end同时执行,那么则会报错。

案例3:获取客户端的请求报文
req.headers['host']

如果要获取具体信息,在后面加中括号,里面跟键的名字。

4.响应报文

HTTP状态码
  1. 200 请求成功
  2. 404 请求的资源没有被找到
  3. 500 服务器端错误
  4. 400 客户端请求有语法错误
内容类型
  1. text/html
  2. text/css
  3. application/javascript
  4. image/jpeg
  5. application/jso

案例:设置状态码为400,显示的内容类型为html类型

app.on('request', (req, res) => {
    res.writeHead(400, {
        'Content-Type': 'text/html;charset=utf8'
    })
})
	

控制台输出
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值