【计算机网络】HTTP协议

一.HTTP协议简介

超文本传输协议(HyperText Transfer Protocol)基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)

1.协议基础

协议规则:更加关注传输内容本身
传输明文内容,安全性比较差
应用层协议:标准化1.1
无状态协议:

2.http包含

http包含就是请求报文和响应报文
协议头,协议正文
例如打电话,拨号这一个请求,对应相应就会有不同的状态

二.HTTP状态码

HTTP Status Code:是用以表示网页服务器HTTP响应状态的3位数字代码。

1.状态码分类:
1.消息

信息,服务器收到请求,需要请求者继续执行操作

2.成功

成功,操作被成功接收并处理

3.重定向

需要进一步的操作以完成请求

4.客户端错误

请求包含语法错误或无法完成请求

5.服务器错误

服务器在处理请求的过程中发生了错误

一般1,2,3开头的都是正常,请求是存在的。4是浏览器客户端问题,5是服务器问题

2.常见状态码:
  • 200:请求成功
  • 301:重定向:永久跳转,完成请求还需要进一步操作
  • 302:重定向:临时跳转,完成请求还需要进一步操作
  • 302:没有修改过,请求的内容没有修改过
  • 403:客户端错误:没有权限,拒接访问
  • 404:客户端错误:所访问的页面不存在,错误页面
  • 500:服务器内部错误:服务器未能实现合法的请求

三.HTTP协议的请求+响应

1.常用请求get&&post
  • get请求获取由Request-URL所标识的资源:get通过URL传递参数
  • post请求在Request-URL所标识的资源后附加新的数据:post通过请求体传递参数
Get请求

对于一个请求头

  • get方法 :访问的不是主机的根目录,是主机的passport子目录|| 使用的是HTTP1.1版本,解析
  • Accept:告诉服务器我这里可以处理哪种页面,如图就是json,javascript,*/*表示所有的资源都可以处理
  • Accept-Languange:浏览器的语言
  • User-Agent:客户端信息,版本,操作系统,兼容版本号在括号内
  • Accept-Encoding:编码压缩格式,标准gzip压缩格式,
  • host字段:表示主机
  • cookie
Post请求

对于一个请求头

  • post方式||| 主机名 ||| http1.1
  • Referer:通过哪里来访问这个页面

四.HTTP的Cookie和Session

Session

SessionID是32位16进制的字母,表示的种类很多,服务器用来唯一标识浏览器或者客户端的,用另一个浏览器登录同一个服务器SessionID也不一样,登录状态改变,PHP中的Session文件会改变.

  • Seeion保存在服务器端 ,服务器自己运行和维护这样的文件
  • 但是,如果用户量很大的时候,服务器的维护消耗寻找很大,性能受到影响
  • 从查找速度来考虑的话,把Session保存在内存中而不是硬盘中
  • 从数据库方式的话,保存状态为数据而不是在文件中
Cookie

cookie保存在客户端,可以方便从客户端保存文件信息

  • 1)浏览器从Cookie获取账号信息和状态,
  • 2)浏览器把账号和信息发送给服务端
  • 3)服务端验证账号的状态和信息
  • 4)服务器响应客户端

从安全性看,cookie缓存可能会有账户密码泄露,cookie的过期时间,所以一般退出的时候最好清空Cookie和Session

不过之后对于用户校验都有token之类的校验

五.Http和Https的区别

SSL(Secure Sockets Layer)协议,在HTTP的基础上加入了SSL(Secure Sockets Layer)协议,SSL依靠SSL证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。从而诞生了HTTPS(安全套接字层超文本传输协议)。

简单来说,HTTPS协议="SSL+HTTP协议"构建的可进行加密传输、身份认证的网络协议,是HTTP的安全版

相同之处

协议基础是相同的,都是从浏览器或者客户端,发送一个请求到服务器对应的的端口

服务器收到请求就会返回一个状态码和对应的消息(请求消息,错误信息)
系统使用同一资源定位符,这里面只有协议的头说明是不一样的。

不同之处
不同之处http协议https协议
工作层应用层传输层
端口80443
传输方式明文传输SSL加密传输(SSL+HTTP)
工作耗时TCP握手TCP握手+SSL握手
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值