计算机网络相关测试须知

HTTP请求的方法

方法说明详细说明
GET获取资源用来请求获取一斤被URI标识的资源,指定获取的资源经过服务器解析后返回响应内容( 我想要获取这个资源)
POST传输实体主体用来传输实体的主体。POST的主要目的并不是获取响应的主体内容(我想把这条信息告诉你)
PUT传输文件将请求文件内容包含在请求报文中,保存到指定的URI的位置
DELETE删除文件与PUT相反,将指定的URI的资源删除掉(我想要删除这个信息)
DEAD获取报文首部与GET方法一样,但是不返回报文主题内容,用于确认URI的有效性和资源更新的日期时间等等(想要知道某个信息的部分信息)
CONNECT要求使用隧道协议连接代理要求在与代理服务器建立通信的时候建立隧道,实现用隧道协议TCP通信,主要使用SSL、TSL协议把通信内容加密后经网络隧道传输

等等…

HTTP常见的状态码

状态码类别原因短语
1xxinformation(信息类状态码)接收的请求正在处理
2xxSuccess(成功状态码)请求已完成正常处理
3xxRediretion(重定向状态码)需要附加操作以完成请求
4xxClient error(客户端错误状态码)服务器无法处理请求
5xxServer error(服务器错误状态码)服务器处理请求错误

状态码详解

2xx
  • 200:OK
  • 204 not content:请求已经成功处理,但是返回的响应报文不包含实体的主体部分(body)。一般只需要从客户端往服务器发送信息,而不需要返回数据时使用。
3xx
  • 301 :Move Permanently 永久性重定向
  • 302 Found:临时性重定向
  • 303 :和302一样的功能,但是303明确要求客户端应该采用 GET 方法获取资源
  • 304 Not Modified:如果请求报文首部包含一些条件,比如:If-Match,If-ModifiedSince、If-None-Match、If-Range,If-Unmodified-Since,如果不满足条件,服务器会返回304状态码
  • 307 Temporary Redirect:临时重定向,和302含义类似,但是307要求浏览器不会把重定向请求的 POST 方法改为 GET 方法
4xx
  • 400 Bad Request:请求报文中存在语法错误
  • 401 Unauthorized:表示发送的请求需要有认证信息(BASIC认证、DIGEST认证)。如果之前已进行过一次请求,则表示用户认证失败
  • 403 Forbidden:请求被拒绝
  • 404
5xx
  • 500 Internal Server Error:服务器正在执行请求时发生错误
  • 501 Not Implemented:表示客户端请求的功能还不支持
  • 502 Bad Gateway:通常是服务前作为网关或代理时返回的错误,表示服务器自身工作正常,访问后端服务器发生错误
  • 503 Service Unavailable:服务器暂时处于超负载或正在进行停机维护,现在无法处理请求

HTTP 无状态

HTTP是无状态的,因为如果是有状态,记住的话对服务器造成很大的压力,这样子服务器需要记住大量的请求。因此通过Cookie和Session来记住状态。 Cookie 来保存信息,使得它可以处理大量事务。Cookie 是服务器发送到用户浏览器并保存在本地的一小块数据,它会在浏览器之后向同一服务器再次发起请求的时候被携带上,用于告知服务端两个请求是否来自同一服务器。

cookie的用途
  • 会话状态管理,比如登录
  • 设置,比如主题、用户自定义设置
  • 浏览器跟踪行为:跟踪用户行为轨迹
如何创建cookie
  • 服务器返回的响应里包含set-cookie字段,客户端事多响应报文后将Cookie保存在本地浏览器中
客户端如何使用Cookie
  • 客户端再去请求服务器时带上Cookie字段,放在首部字段中发送到服务器端
session

session 与cookie类似,但是session存在服务器端

Session应用之登录
  1. 用户进行登录时,用户提交包含用户名和密码的表单,放入 HTTP 请求报文中
  2. 服务器验证该用户名和密码,如果正确则把用户信息存储到 Redis 中,它在 Redis 中的 Key 称为 SessionID
  3. 服务器返回的响应报文的 Set-Cookie 首部字段包含了这个 SessionID,客户端收到响应报文之后将该 Cookie 存入本地
  4. 客户端之后对同一个服务器进行请求时会包含这个 Cookie 值,服务端收到之后提取出 SessionID,从 Redis 中取出用户信息,继续之前的业务操作

一次完整的HTTP请求

  1. 根据域名解析IP地址
  2. 建立一个TCP连接
  3. 发送HTTP请求
  4. 收到HTTP响应
  5. 释放TCP连接
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值