HTTP协议

1.HTTP协议的概念

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

2.报文

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

3.请求报文

1.请求方式(Request Method)

         1.get请求数据

          2.post发送数据

2.请求地址

app.on('request',(req,res)=>{
            req.headers //获取请求报文
            req.url //获取请求地址
            req.method  //获取请求方法
})

4.响应报文

1.HTTP状态码

  •  200 请求成功
  • 404 请求的资源没有找到
  • 500 服务端错误
  • 400 客户端请求语法有错误

2.内容类型

text/html,text/css,application/JavaScript,/image/jpeg

app.on('request',(req,res)=>{
    //设置响应报文
    req.writeHead(200,{
    'content-type':'text/html;charset=utf8'
})
})

5.HTTP请求与响应处理

请求参数

客户端向服务器端发送请求时,有时需要携带一些客户的信息,客户信息需要通过请求参数的形式传递到服务器端,比如登录操作

Get请求参数

参数获取需要借助url模块,url模块用来处理url地址

const http=require('http');
const app=http.creatServer()
app.on('request',(req,res)=>{
//利用url中的parse方法将请求地址url转换成对象
//利用对象解构的方法,并返回对象
//true代表将参数解析为对象格式
    let {query}=url.parse(req.url,true)
})
app.listen(3000)

POST请求参数

参数被放置在请求体中进行传输

获取POST参数需要使用data事件和end事件

使用queryString系统模块将参数转换为对象格式

const queryString=require('queryString') //引入系统模块
app.on('request',(req,res)=>{
    let postdata=''
req.on('data',(param)=>{//因为post参数是以事件流的方式进行传输的,所以我们采用监听参数传输事件
    postdata+=param
})
req.on('end',()=>{
//在参数传递完成之后,我们使用queryString中parse方法,将传输的参数转换成对象格式
    postdata=queryString.parse(postdata)
})
})

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值