【接口】HTTP(1)|请求|响应

1、概念

Hyper Text Transfer Protocol(超文本传输协议)用于从万维网(就是www)服务器传输超文本到本地浏览器的传送协议。

HTTP协议是基于TCP的应用层协议,它不关心数据传输的细节,主要是用来规定客户端和服务端的数据传输格式,最初是用来向客户端传输HTML页面的内容。默认端口是80。

HTTP是基于请求与响应模式的、无状态的、应用层的协议。

TCP------传输层协议

IP------网络层协议

2、HTTP请求报文( 报文===请求数据**)**

HTTP请求报文主要 由请求行请求头部空一行请求体 部分组成

请求行:请求方式 + url + 协议

2.1 请求方法(Request Method):

请求方法 备注
POST 创建资源-增加
GET 获取资源-查询
PUT 替换资源-修改
DELETE 删除资源
HEAD 获取服务器响应消息头
PATCH 更新资源,替换部分资源

2.2 URL(Uniform Resource Locator):

统一资源定位符,用于描述网上的资源

格式:schema://host[:port]/path/.../[?query-string]

scheme:协议,如http,https,ftp等

host:域名或者IP地址 DNS会将域名转换成IP地址

port:端口

path:资源路径

query-string:发送的参数

示例:https://www.baidu.com/s?wd=接口

2.3 请求头

请求头 描述
Host 主机ip地址或域名
User-Agent 客户端相关信息,比如操作系统、浏览器等信息,用户代理
Accept 指定客户端接收信息类型,如:image/jpg,text/html,application/json 表示任意类型的数据
Accept-Charset 客户端接受的字符集,如gb2312、iso-8859-1
Accept-Encoding 可接受的内容编码,如gzip------编码方式
Accept-Language 接受的语言,如Accept-Language:zh-cn
Authorization 客户端提供给服务端,进行权限认证的信息
Cookie 携带的cookie信息
Referer 当前文档的URL,即从哪个链接过来的
Content-Type 请求体内容类型,如Content-Type: application/x-www-form-urlencoded
Content-Length 数据长度
Cache-Control 缓存机制,如Cache-Control:no-cache
Pragma 防止页面被缓存,和Cache-Control:no-cache作用一样
X-Requested-With 如果 requestedWith 为 null,则为同步请求; 如果 requestedWith 为 XMLHttpRequest 则为 Ajax 异步请求。

3、HTTP响应报文

HTTP响应报文主要 由状态行响应头部空一行响应正文 部分组成

3.1 状态码

**状态码(Status Code ):**用以表示网页服务器HTTP响应状态的3位数字代码

状态码 描述
1XX 请求已接受待处理
2XX 请求成功并返回
3XX 重定向相关,请求资源位置发生了变化
4XX 客户端发送请求错误
5XX 服务器端错误

3.2 响应头

响应头 描述
Server HTTP服务器的软件信息
Date 响应报文的时间
Expires 指定缓存过期时间
Set-Cookie 种Cookie
Last-Modified 资源最后修改时间
Content-Type 响应的类型和字符集,如:Content-Type: text/html; charset=utf-8
Content-Length 内容长度
Connection 如Keep-Alive,表示保持tcp连接不关闭,不会永久保持连接,服务器可设置
Location 指明重定向的位置,新的URL地址,如304的情况
相关推荐
FreeBuf_3 小时前
最新研究揭示云端大语言模型防护机制的成效与缺陷
网络·安全·语言模型
网硕互联的小客服7 小时前
如何利用Elastic Stack(ELK)进行安全日志分析
linux·服务器·网络·安全
浩浩测试一下8 小时前
Authpf(OpenBSD)认证防火墙到ssh连接到SSH端口转发技术栈 与渗透网络安全的关联 (RED Team Technique )
网络·网络协议·tcp/ip·安全·网络安全·php
leagsoft_10038 小时前
联软NSPM自动化策略管理 助力上交所加速国产化替代提升运维效率
运维·网络·自动化
Think Spatial 空间思维9 小时前
【实施指南】Android客户端HTTPS双向认证实施指南
android·网络协议·https·ssl
昔我往昔10 小时前
https和http有什么区别-http各个版本有什么区别
网络协议·http·https
漫步者TZ10 小时前
【Netty系列】解决TCP粘包和拆包:LengthFieldBasedFrameDecoder
java·网络协议·tcp/ip·netty
leagsoft_100310 小时前
筑牢企业网管域安全防线,守护数字核心——联软网管域安全建设解决方案
网络·安全·网络安全
苦学编程的谢11 小时前
Java网络编程API 1
java·开发语言·网络
alien爱吃蛋挞11 小时前
【JavaEE】万字详解HTTP协议
网络·网络协议·http