HTTP协议

小王学习录

  • 今日摘录
  • 前言
  • 抓包工具(fiddler)
  • HTTP协议
    • 一. HTTP请求
      • 1. 什么是URL
      • 2. 什么是HTTP方法
        • (1)GET请求
        • (2)POST请求
        • (3)POST请求和GET请求的区别
      • 3. header部分
      • 4. body部分
    • 二. HTTP响应
      • 1. 状态码
    • 三. 构造HTTP请求
      • 1. 通过from表单构造http请求
        • (1)get方式提交:
        • (2)post方式提交
      • 2. 使用ajax构造http请求
      • 3. 对比ajax和form标签两种方式
    • 四. HTTP协议中程序员可以自定义的内容

今日摘录

莫听穿林打叶声,何妨吟啸且徐行。
HTTP协议_第1张图片

前言

HTTP是应用层中最广泛使用的协议之一,HTTP基于传输层的TCP协议,用于浏览器和web服务器之间进行交互。

浏览器将符合HTTP协议格式的数据填入传输层的socket 发给服务器,服务器进行响应。下面具体介绍:

抓包工具(fiddler)

可以抓包的工具有很多,这里咱们使用的是fiddler。看官可以直接从以下链接中进行下载:

链接:https://pan.baidu.com/s/1rtOYkIaAdHsHLHfj_-NxLw 
提取码:2222

需要注意的是fiddler本质上是一个代理程序,在使用fiddler时需要关闭其他代理程序和浏览器上的代理插件。尤其是电脑上下载了easyconnect,这个软件需要删除。

这里简单提一下:代理分为两种,正向代理和反向代理。代表客户端的代理就是正向代理,代表服务器端的代理就是反向代理。

下面通过抓包工具抓个包来具体学习HTTP协议。

HTTP协议

在HTTP中有http请求和http响应,以下分别介绍:

一. HTTP请求

这是一个HTTP请求报文,由下图可以知道HTTP协议是一个行文本协议。
HTTP协议_第2张图片看报文首行:
在这里插入图片描述首行报文有三个内容,分别是HTTP方法URLHTTP版本

1. 什么是URL

URL是唯一资源定位符,俗称网址。

URL最关键的有以下几个部分:
协议名:// 服务器地址(ip地址): 端口号 / 带层次的文件路径 ?查询字符串。
在上面搜狗的URL中,省略了端口号和查询字符串,‘/’ 代表的是根目录。

  1. 当省略了端口号时,浏览器会根据协议名提供一个默认端口号。如果是HTTP则默认端口号是80,如果是HTTPS则默认端口号是443
  2. / 代表的是HTTP服务器根目录,HTTP服务器是系统中的一个进程,系统会给HTTP服务器一个特定的目录交给HTTP服务器进行管理。该目录中的资源都可以供用户进行访问。具体HTTP服务器的根目录是哪个目录要看服务器的配置
  1. https://mp.csdn.net/mp_blog/manage/article?spm=1010.2135.3001.5448在这个RUL中包括了:
  2. 协议名:https
  3. 服务器地址: mp.csdn.net
  4. 带层次的路径:/mp_blog/manage/article 表示根目录下的mp_blog目录下的manage目录中的article文件。
  5. 查询字符串(query string): spm=1010.2135.3001.5448。查询字符串通常以键值对的形式出现,多个键值对用&符号隔开。

注意

你可能感兴趣的:(计算机网络,http,网络协议,GET,POST,ajax,form,fiddler)