网络协议七 应用层 HTTP 协议

应用层常见的协议 HTTP协议

一. 如何查看我们的http 协议全部的内容有哪些呢?

一种合理的方法是 通过 wireshark 软件,找到想要查看的HTTP --->追踪流--->HTTP流 来查看

结果如下:红色部分 为 发送给服务器的,蓝色部分为服务器回给我的

POST /cloudquery.php HTTP/1.1
User-Agent: Post_Multipart
Host: qup.f.360.cn
Accept: */*
Pragma: no-cache
X-360-Cloud-Security-Desc: Scan Suspicious File
x-360-ver: 4
Content-Length: 978
Content-Type: multipart/form-data; boundary=----------------------------bd51e56c91b5

------------------------------bd51e56c91b5
Content-Disposition: form-data; name="m"


..@~.....
.X.!"J..v+2DmT.:p.	]X.....Y.....=*..
..J......L. d.........
P.~....AU......M+.Ht.{...H.A..L.$.@}..[...%R..MKa..X.....NA..fV.......l8.....P....|
.4..f]W.8wT..y.(.-Z....3..Um/...S.l....~....AO....*..N{.~..+..l....+.......
.Vg#.1.C..q._.w.n....;..Mz6._r.....[^E......c.huM..,../w{.,Fa$u.......4..9..q.3.n....*....|..f
>.......#4.6.Y.8.U.G.9.....}..3Y(r.....heq._....8z.p...Rm..E..;..N..s/.....4.u......Ynk.(..g..S@3..H....@.?#L..9MU\X......]..r...)....W...b.b..t.?.r J.>N.~..5@B.A.\...k.....1..t.....[.....Fts.............7?.*.k.>...j.K..7.*..w...0..S.............	......s..{..0W......i..mo.o..b..b.1Y..N_....If...e.Lb.;O.hp<....d..8].*.... .b..B...C..4...\......Q......	!..@K:_.>.".D...y...$t..y.".i)D._%..r.....`.../.+Z.@....t....#xn....!...;.........)w'.4..eHw.'b.5=..Mg.`.gdv.E.[....z:.].....3K.._..ggTZ...Kg_,*......\.........XL.
------------------------------bd51e56c91b5--
HTTP/1.1 200 OK
Server: nginx
Date: Sun, 11 Aug 2024 01:52:30 GMT
Content-Type: application/octet-stream
Transfer-Encoding: chunked
Connection: close
Cache-Control: no-cache
pragma: no-cache


...~.......P..h.t.y....w.J....G.
.!.j....OB.%.^.VLb.^2....:s...].?..=..]-..{...T$..'g.W.S.g2....<.R...S.....R.U.....T.T.........W.T.T.T...U.....R...U.W.....S.....W.W.S.....T.....W...T.........W.............R...............U.....T...W...........?.?.?.?...?.?.?.?.?.?.;.

get 请求

post 请求

二. HTTP 的报文格式

从上述也可以看到,如果是get 请求 ,则没有请求体

三. 更加详尽的HTTP 的报文格式。

1、实际上HTTP的报文格式是由 ABNF规定的。

具体要求如下:

也就是不管是 请求报文,或者 响应报文 都应该遵守上面的PPT

2. 请求行 和 状态行(状态行实际上就是返回行)

3. 请求头和请求体

4.URL的编码,如果有中文,空格,则会根据UTF-8进行编码

5. 使用Xshell 工具,在X sehll 中使用telnet,可以直接面向HTTP报文于服务器交互

先开始服务器,

然后执行下面的步骤

6.请求行中的 请求方法有哪些

7. 请求头字段

8.响应头字段

9.状态码

10. 这里为了后面更好的学习,学习一个前端的技术 form

11. 响应头中的 Access-Control-Allow-Origin 字段 和 请求头中的 Origin 字段

要明白这两个 是干啥的,首先要明白什么是 跨域。

我们以java web 前后端举例说明。

前端和后端的开发是需要分开的,因此目前在公司的开发模式是:

前端人员 将 html,js,css 写在一个服务器上,我们假设叫做 页面服务器(假设使用的服务器为nginx),地址为localhost:8080/

后端人员 将servlet ,java代码写在一个服务器上,我们假设叫做 后台服务器(假设使用的服务器是tomcat)地址为localhost:63342/

该项目的访问流程是:

先去 localhost:8080/ 拿到 html页面显示。

在html上有个 form表单,当user 填写了数据后,填写数据,然后发送给 localhost:63342/

如果在这个过程中,就涉及到了 两个服务器的交互,也就是说,涉及到了跨域访问的问题。

如果这个过程中有 异步的 AJAX 的请求,跨域 访问就会有问题。那么如何fix 这个问题呢?

在 java服务器端 设置 Access-Control-Allow-Origin 参数。

cookie 和set-cookie 是为了解决 登陆后,不需要 账号密码就能访问 其他和该网址在同一服务器下的URL的问题

是一种会话跟踪技术

四。代理服务器的概念 了解

正向代理和反向代理

正向代理的作用

反向代理的作用

五 CDN

相关推荐
Spring_java_gg10 分钟前
如何抵御 Linux 服务器黑客威胁和攻击
linux·服务器·网络·安全·web安全
方方怪1 小时前
与IP网络规划相关的知识点
服务器·网络·tcp/ip
weixin_442643422 小时前
推荐FileLink数据跨网摆渡系统 — 安全、高效的数据传输解决方案
服务器·网络·安全·filelink数据摆渡系统
阑梦清川3 小时前
JavaEE初阶---网络原理(五)---HTTP协议
网络·http·java-ee
阿尔帕兹3 小时前
构建 HTTP 服务端与 Docker 镜像:从开发到测试
网络协议·http·docker
FeelTouch Labs3 小时前
Netty实现WebSocket Server是否开启压缩深度分析
网络·websocket·网络协议
千天夜5 小时前
使用UDP协议传输视频流!(分片、缓存)
python·网络协议·udp·视频流
长弓三石6 小时前
鸿蒙网络编程系列44-仓颉版HttpRequest上传文件示例
前端·网络·华为·harmonyos·鸿蒙
xianwu5436 小时前
反向代理模块
linux·开发语言·网络·git
follycat6 小时前
[极客大挑战 2019]HTTP 1
网络·网络协议·http·网络安全