HTTP网络协议

1.HTTP

(1)概念:

Hyper Text Transfer Protocol,超文本传输协议规定了浏览器和服务器之间数据传输的规则。

(2)特点

  1. 基于TCP协议:面向连接,安全
  2. 基于请求-响应模型的:一次请求对应一次响应
  3. HTTP协议是无状态的协议:对于事务处理没有记忆能力。每次请求-响应都是独立的

1)缺点:多次请求间不能共享数据。

2)优点:速度快


2.请求

(1)含义

含义: 客户端向服务器发送消息。

(2)组成

1)请求行(请求方法 URL 协议/协议版本号)

URL组成:

URL(网址)=协议://主机地址(IP地址或域名):端口号/路径?参数名=参数值&参数名=参数值


面试题1:介绍一下http和https的区别?

| | http | https |
| 共同点 | 都是协议,都可以用来传输数据 ||

不同点 * 不加密,不安全 * http端口号是80 * 加密协议(公网使用) * https端口号是443
[http和https的区别]

面试题2:请求方法(get和post的区别)

| | get | post |
| 共同点 | 都可以向服务器发起请求,并且携带参数 ||

不同点 * 参数放在浏览器的地址栏,可以看到不安全 * 参数长度有限制(浏览器的地址栏有长度限制) * 没有请求体 * 参数放在请求体,需要抓包才可以看到,相对安全 * 参数长度无限制,可以传递任意数量的参数
[get和post的区别]

2)请求头

  • 键值对的形式展示
  • 客户端的属性信息

3)请求体(请求参数)

  • name=value
  • 如果有多个参数,用&连接

3.响应

(1)含义

含义: 服务器向客户端返回数据的过程。

(2)组成

**1)响应行:**协议/协议版本号 响应状态码 状态描述

面试题:响应状态码

| 2XX | 成功 |
| 3XX | 重定向 |
| 4XX | 客户端错误 |

5XX 服务器错误
[面试题:响应状态码]

**2)响应头:**服务器的属性信息

3)响应体: 服务器返回的结果(图片\HTML\JSON\txt等等)

JSON:{'name1':'value1'}


未完待续。。。

相关推荐
摸鱼仙人~3 小时前
HTTP 状态码系统拆解
网络·网络协议·http
白晨并不是很能熬夜3 小时前
【RPC】第 1 篇:全景篇 — 一次 RPC 调用的完整旅程
java·网络·后端·网络协议·面试·rpc·java-zookeeper
学编程就要猛4 小时前
JavaEE初阶:网络原理-HTTP(上)
网络·网络协议·http
S1998_1997111609•X4 小时前
滄集/㞯鎩.赫量被恶意篡改?|\^*仺\~:sall,sql=㶏齾bci.ji.app_sql=-heart{TCP.box}‘雧……㞋
网络·数据库·网络协议·百度·微信
菱玖6 小时前
常见 HTTP 状态码详解
网络·网络协议·http
TechWayfarer6 小时前
离线IP数据库内网部署:场景选型与热更新落地实践
网络·数据库·python·网络协议·tcp/ip
IPDEEP全球代理6 小时前
动态IP能防止账号关联吗?
网络·网络协议·tcp/ip
我不是立达刘宁宇7 小时前
CORS(跨原产资源共享)靶场1
python·http
川石课堂软件测试8 小时前
AI如何赋能软件测试行业的发展
人工智能·python·功能测试·网络协议·单元测试·测试用例·prometheus
S1998_1997111609•X8 小时前
k:file/~*…/code/*iOS/an/app-/log in/ext./-system.API/-(NFV)=sdk.
数据库·网络协议·百度·微信·ssh