JavaEE——HTTP协议

news/2024/7/8 3:15:25

前端的知识伴随着博客系统这个项目的完结而告一段落,在接下来的博客中,将详细介绍如何将前后端连接起来,使得我们的博客系统更加牛逼

HTTP协议

是应用层中最典型的协议,供浏览器和服务器,手机和杜武器,服务器和服务器之间交互
当我们在浏览器的搜索栏打了一堆字时,我们最终会得到一个网页,这就是我们的浏览器通过HTTP协议和服务器进行了通信
HTTP协议是一问一答模型的协议

请求

HTTP请求包含一下几部分

  1. 首行 (方法,URL,版本号)
  2. 请求头 (一系列键值对)
  3. 空行 (用来分割请求头和正文)
  4. 正文 (有的请求没有正文)

响应

HTTP响应包含一下几部分

  1. 首行 (版本号,状态码)
  2. 响应报头 (一系列键值对)
  3. 空行 (用来分割响应报头和正文)
  4. 正文 (可以是json,css,js,图片等格式)

抓包

我们可以用抓包工具来对自己电脑上的请求交互进行监测
抓包工具就相当于请了一个代理,浏览器和服务器之间的交流过程这个代理都一清二楚

正向代理:给客户端提供代理,服务器就不知道真正的客户端是谁了
反向代理: 给服务器提供代理,客户端就不知道真正的服务器是谁了

在这里,我使用charles抓包工具来演示一下抓包过程,具体使用技巧大家csdn搜索一下其他博客就好了
在这里插入图片描述
上面是请求,下面是响应

请求

POST /EWS/Exchange.asmx HTTP/1.1  (首行)
Host: outlook.office365.com (请求头)
Content-Type: text/xml; charset=utf-8
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Accept: */*
User-Agent: AppleExchangeWebServices/827 AddressBookSourceSync/2536
Authorization: Bearer EwA4A+l3BAAUnQP8Jfa2FYxR0AX7HsEZwOdWa28AAWzrGeyPoiukqU7wsy2JdPTY09tC0Ep/rt5EoYpipplxLiE2WNA8PsGml2FJ655klYGDGOzcBQQD5KpvJKyWicJ6sVKR0DhYsIYovBJlcICjmTWEQIdqgX/v7qqRXXOSNK2LKwgngbP6crfIHw3PWH+MzpheP7BV16cvujPbcMOfml2V/4XTjK9VFjywZENj2KHmwMDGlTzVsQXNf+AXTdpmYWfj6DlATOvMukQG5Wa4qWimba3FZOwAVRlT2QGCANe4jhgqpJ/RffW3mfC7oAZkRzZVlRUJdlnyoyY/oDoL0PTm8FthdAbg/tiLPWDH5ju1pFTQfCvUNh9RSit+pUIDZgAACD16hZgyUdPMCAI7QauE0E8/x1e6+09ZblprB3YV6CbwbLYtCYdbxfTF9bAeLn43i0ojmJY60e9kMWsTnikTxhVdJE+LWhQsTJqmJuXziKbryHdPgnbRZbzfjVELSyeY/6kNUcGK/bO0/ADt9HXy61tSB/OpLQTahfWtevb00KE512dPdp07Jd3K1op0Wom8b0rdOQGSTkDIu2Sk0NbOLi8MYqVmyfo0jhAOT+rkTOr/NOytOUbOHwkW3ijIV+6+SWD7FA0xtN1fqEVhelymHWNSIu6UhQlGd7ZWXpaRyF51VL7UHuIZzc9pkHGzja88LZe1BaMn0rwUhT1nNX6hxQrYYI2dMkB+rFPWjCbWlznMjmL8T017YHNAyJ2pkGyzCOfvCEhOoVMnkgWcPzulG0g3pXNmHPdjFcyDyOFZR3fee0o9gTl/kP6+dugh7lyKQ/2+l7tl2/60wmxEBUqRjUg/Ddbl37zGkYwk92ndBmJ4RwlZPH5WwOWkyNn8BtU/bKxefywjgKJ8B2n7bNeaiV1zjtELndJlTB0V4T+/x1KRUETcTGxsNCyIpbND+T2va41kG0XP41Prac+VPzp4FeJHjjoEwO96yRW17HZ4M+NhORdnV14j/JI/E+Lib0zSQyyrGOlT6hhAMT5cOU4EbQieaQCnAku5L9WOhyoUqOdUjZEYAuC0BlvMeTDifo5Gg+/QOwI=
Content-Length: 612
Accept-Language: zh-CN,zh-Hans;q=0.9

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"><soap:Header><t:RequestServerVersion Version="Exchange2007_SP1"/></soap:Header><soap:Body><m:GetFolder xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"><m:FolderShape><t:BaseShape>IdOnly</t:BaseShape></m:FolderShape><m:FolderIds><t:DistinguishedFolderId Id="root"></t:DistinguishedFolderId></m:FolderIds></m:GetFolder></soap:Body></soap:Envelope>
(正文)

响应

HTTP/1.1 200 OK (首行)
Cache-Control: private (响应报头)
Transfer-Encoding: chunked
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/10.0
request-id: 4a461ca8-c28c-77ec-1951-64fc8681f011
Alt-Svc: h3=":443",h3-29=":443"
X-CalculatedBETarget: TYCPR01MB5775.jpnprd01.PROD.OUTLOOK.COM
X-BackEndHttpStatus: 200
Set-Cookie: exchangecookie=01e2d2d1545c46f8b3545db3bccb666a; expires=Tue, 07-Nov-2023 01:13:38 GMT; path=/; secure; HttpOnly
X-RUM-Validated: 1
x-ms-appId: 000000004C28068C
x-EwsHandler: GetFolder
X-AspNet-Version: 4.0.30319
X-BeSku: WCS6
X-DiagInfo: TYCPR01MB5775
X-BEServer: TYCPR01MB5775
X-Proxy-RoutingCorrectness: 1
X-Proxy-BackendServerStatus: 200
X-FirstHopCafeEFZ: HND
X-FEProxyInfo: TY2PR0101CA0030.APCPRD01.PROD.EXCHANGELABS.COM
X-FEEFZInfo: HND
X-Powered-By: ASP.NET
X-FEServer: TY2PR0101CA0030
Date: Mon, 07 Nov 2022 01:13:37 GMT
Connection: keep-alive

<?xml version="1.0" encoding="utf-8"?><s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Header><h:ServerVersionInfo MajorVersion="15" MinorVersion="20" MajorBuildNumber="5791" MinorBuildNumber="26" Version="V2018_01_08" xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/></s:Header><s:Body><m:GetFolderResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"><m:ResponseMessages><m:GetFolderResponseMessage ResponseClass="Success"><m:ResponseCode>NoError</m:ResponseCode><m:Folders><t:Folder><t:FolderId Id="AQMkADAwATNiZmYAZC0zN2I3LTdhNzMtMDACLTAwCgAuAAADXA6FrZEdOEKiytJBKvMbjwEAY0j1UvuiiE6PiyKRVJ9D1QAAAgEBAAAAAA==" ChangeKey="AQAAABYAAABjSPVS+6KITo+LIpFUn0PVAAFW3WZd"/></t:Folder></m:Folders></m:GetFolderResponseMessage></m:ResponseMessages></m:GetFolderResponse></s:Body></s:Envelope>
(正文)

http://lihuaxi.xjx100.cn/news/140120.html

相关文章

MBR分区表的简介

以下内容源于网络资源的学习与整理&#xff0c;如有侵权请告知删除。 参考内容 &#xff08;1&#xff09;S5PV210 Uboot开发与移植01&#xff1a;Uboot概述_麦兜的学习笔记的博客-CSDN博客 &#xff08;2&#xff09;Linux系统下的硬盘分区、格式化与挂载_天糊土的博客-CSD…

个税计算器

第1关:个税计算器 任务描述 输入格式‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬ 输出格式‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬…

Linux xargs 命令学习

xargs的基本功能如下&#xff0c; xargs&#xff0c;是给命令传递参数的一个过滤器&#xff0c;也是组合多个命令的一个工具&#xff1b; xargs 可以将管道或标准输入&#xff08;stdin&#xff09;数据转换成命令行参数&#xff0c;也能够从文件的输出中读取数据&#xff1b; …

Spring mvc中Controller如何设置接受参数的默认值呢?

转自: Spring mvc中Controller如何设置接受参数的默认值呢? 在spring日常开发中,我们如何为方法设置参数的默认值呢,下文笔者将一一道来,如下所示 实现思路:使用RequestParam注解借助defaultValue属性即可设置默认值例: public ResponseBody Object query(RequestParam(va…

springboot图书借阅管理系统 java读书心得借书卡管理系统

本系统的读者可分为前台普通读者、后台管理员两类。 本系统共分成两个界面&#xff1a;一个界面用于管理员登录&#xff0c;主要负责进行扣减金额和查看更新图书管理&#xff1b;另外一个界面用于普通读者登录&#xff0c;主要负责浏览图书种类&#xff0c;图书借阅之后方可进行…

蓝桥杯入门即劝退(六)等差素数数列

九层之台&#xff0c;起于垒土&#xff0c;你我皆是垒土人✔ 愿我的文章对你有所帮助&#xff01; 欢迎关注点赞评论&#xff0c;共同学习&#xff0c;共同进步&#xff01; 一、题目 2,3,5,7,11,13,.... 是素数序列。 类似&#xff1a;7,37,67,97,127,157, 这样完全由素数组成…

python模拟退火算法(应用篇1)--求解一元函数极值

目录算法模型基本思想带约束条件的一元函数函数表达式及图像退火算法实现求解过程可视化求解过程分析算法模型 解空间bound、目标函数func、初始解s 基本思想 设置参数&#xff1a;初始温度T、初始解s0s_0s0​、降温系数δ\deltaδ&#xff0c;定义目标函数func&#xff0c;…

Leetcode《图解数据结构》刷题日志【第三周】(2022/10/31-2022/11/06)

leetcode《图解数据结构》刷题日志【第三周】&#xff08;2022/10/31-2022/11/06&#xff09;1. 剑指Offer 59 -II.队列的最大值1.1 题目1.2 解题思路1.3 数据类型功能函数总结1.4 java代码2. 剑指Offer 67.将字符串转换成整数2.1 题目2.2 解题思路2.3 数据类型功能函数总结2.4…