无代码网站开发,男人需要网站,湖北省建设工程网站,成都设计公司怎么选HTTP交互基础 目的HTTP定义详解HTTP协议#xff08;规范#xff09;1. 主要组成部分1.1 请求行#xff08;Request Line#xff09;#xff1a;包含请求方法、请求URI#xff08;Uniform Resource Identifier#xff09;和HTTP协议版本。1.2 请求头部#xff08;Reques… HTTP交互基础 目的HTTP定义详解HTTP协议规范1. 主要组成部分1.1 请求行Request Line包含请求方法、请求URIUniform Resource Identifier和HTTP协议版本。1.2 请求头部Request Headers在请求中客户端可以通过请求头部携带额外的信息给服务器。请求头部包含了一系列的字段用于描述请求的附加信息例如用户代理、内容类型、授权信息等。1.2.1 头部Header中常见的几个字段1.2.2 头部字段 Content-Type 常见媒体类型扩展 1.3 请求体Request Body某些请求方法如 POST 或 PUT可以在请求体中携带数据。请求体一般用于向服务器提交表单数据、上传文件等。1.3.1 常见的请求体格式1.3.2 POST 扩展 前后端常见问题1. 传文件加其他参数2. 只传参数 三级目录 目的 对前端交互相关请求协议缺乏稳固的基础知识gpt正好适合问基础知识通过询问gpt3.5进行学习写一篇笔记补充补充 HTTP定义
什么是HTTP Http全称HyperText Transfer Protocol超文本传输协议 超文本是一种通过链接将相关信息组织起来的非线性文本形式。它通过超链接连接不同的文本或资源使得用户可以在阅读过程中自由地跳转和浏览相关内容提供更加丰富和智能化的阅读体验。是一种用于客户端和服务器之间传输数据的应用层协议。协议就是一种规范
详解HTTP协议规范
1. 主要组成部分
1.1 请求行Request Line包含请求方法、请求URIUniform Resource Identifier和HTTP协议版本。
请求方法HTTP/1.1 定义的请求方法有8种GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE在RESTful架构中常用的是POST、GET、PUT、DELETE
请求方法作用于POST常用于新增GET常用于查询PUT常用于编辑DELETE常用于删除
URI 统一资源标识符号Uniform Resource IdentifierURI包括两种类型URL和URN。
类型描述URLUniform Resource LocatorURL是URI的一种它指定了互联网上的资源的位置以及访问该资源的方式。换句话说URL是访问Web页面或其他Web资源的地址它由协议、主机名、路径等部分组成。举个例子http://www.example.com/index.html就是一个URL。URNUniform Resource NameURN也是URI的一种它与URL不同的是URN仅仅是为一个资源分配一个唯一的名字不涉及定位资源的具体位置。URN作为一个名字可以持久的指向一个特定的资源无论它被移动到哪个位置。URN还没有被广泛使用目前只在某些特定的场景下使用如在元数据中引用资源。
1.2 请求头部Request Headers在请求中客户端可以通过请求头部携带额外的信息给服务器。请求头部包含了一系列的字段用于描述请求的附加信息例如用户代理、内容类型、授权信息等。
1.2.1 头部Header中常见的几个字段
字段描述Content-Type指定请求体的媒体类型如application/json、application/x-www-form-urlencoded等Content-Length指定请求体的长度以字节为单位User-Agent标识发出请求的客户端应用程序或浏览器的用户代理信息Accept指定客户端能够接受的响应内容类型Authorization包含用于进行身份验证的凭证信息比如Bearer令牌、基本认证凭据等。Cookie包含来自服务器的应答Cookie值客户端将这些值存储并在每次请求中发送回服务器Referer表示当前请求是从哪个URL页面跳转过来的用于记录请求的来源If-Modified-Since用于条件性GET请求指定自某个日期/时间以来是否有更新的资源可用。Cache-Control控制缓存行为的指令如max-age、no-cache、private等。X-Requested-With标识该请求是由Ajax发起的常用于区分普通请求和异步请求。TODO 待补充
1.2.2 头部字段 Content-Type 常见媒体类型扩展
媒体类型类型描述application/jsonJSON 格式的数据application/xmlXML 格式的数据application/octet-stream二进制流数据通常用于文件上传或下载text/plain纯文本数据不包含任何格式或特殊字符text/htmlHTML 格式的数据通常用于网页内容multipart/form-data用于表单提交可以包含多种不同类型的数据比如文件、文本等。application/x-www-form-urlencoded经过 URL 编码的表单数据application/pdfPDF 格式的文档image/jpeg 或 image/pngJPEG 或 PNG 格式的图片audio/mpeg 或 audio/oggMPEG 或 OGG 音频文件Access-Control-Expose-Headers 该字段值为一个以逗号分隔的名称列表用于明确告知客户端可以访问的响应头字段名称。例如Access-Control-Expose-Headers: Content-Type, X-Custom-Header 关于 Access-Control-Expose-Headers 默认情况下浏览器可以访问以下响应头字段 当客户端向服务器发送HTTP请求时以下是一些常见的可以被访问到的HTTP请求头字段 Accept指定客户端能够处理的媒体类型MIME类型。 Accept-Encoding指定客户端能够处理的内容编码方式如gzip、deflate等。 Accept-Language指定客户端首选的自然语言用于响应内容的国际化。 User-Agent包含了发起请求的用户代理信息通常标识了浏览器或其他客户端应用程序。 Host指定目标服务器的主机名和端口号。 Cookie指定之前由服务器设置的Cookie值用于跟踪会话状态。 Authorization用于进行身份验证的凭证信息如基本认证、Bearer令牌等。 在服务器响应中以下是一些常见的可以被访问到的HTTP响应头字段 Content-Type指定响应正文的媒体类型。 Content-Length指定响应正文的字节长度。 Cache-Control控制缓存行为如max-age、no-cache等指令。 Expires指定响应的过期时间。 Last-Modified指示资源的最后修改时间。 Set-Cookie设置Cookie值用于跟踪会话状态。 Access-Control-Allow-Origin指示允许访问资源的来源用于CORS跨域请求。 Location指定重定向的URL地址。
1.3 请求体Request Body某些请求方法如 POST 或 PUT可以在请求体中携带数据。请求体一般用于向服务器提交表单数据、上传文件等。
1.3.1 常见的请求体格式
请求格式格式描述表单数据Form Data使用HTTP POST方法时可以将表单数据包含在请求体中。请求体的格式类似于key1value1key2value2的键值对形式多个键值对之间使用符号连接。JSON数据使用HTTP POST或PUT方法时可以将JSON格式的数据包含在请求体中。请求体的内容为JSON字符串需要设置请求头的Content-Type为application/json文件上传Multipart Form Data使用HTTP POST方法进行文件上传时可以将文件及相关信息打包放入请求体中。这种格式一般用于上传文件请求体以多部分multipart的形式组织并使用boundary分隔每个部分原始数据Raw Data也可以直接将原始数据以字符串的形式放入请求体中无论是纯文本还是其他格式的数据。需要根据实际情况设置请求头的Content-Type。
1.3.2 POST 扩展 前后端常见问题
1. 传文件加其他参数
Content-Type 使用 multipart/form-data 将表单数据按照多部分的格式进行编码。每个字段都会被封装成一个单独的部分可以包含普通文本字段和文件上传字段。这种编码方式适用于需要上传文件的场景。
2. 只传参数
Content-Type 使用 application/x-www-form-urlencoded 将表单数据按照URL参数的方式进行编码。所有字段名和字段值都会被URL编码并使用符号连接。这种编码方式适用于只传输普通文本字段的场景。
三级目录