热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

如何用最简洁形象的语言解释什么是HTTP协议中的头域(header)?-

回复内容: 信封、身份证、快递单子都不太确切,因为头域中不包括完整的请求地址信息,以本页为例,请求的第一行GET /question/22477602 HTTP/1.1 个人理解为附加信息。比如 U

回复内容:

信封、身份证、快递单子都不太确切,因为
  1. 头域中不包括完整的请求地址信息,以本页为例,请求的第一行

    GET /question/22477602 HTTP/1.1
    
    个人理解为附加信息。比如 UA,没有这个应用也能跑,但是有了这个服务端就能根据 UA 判断客户端的类型来更好的响应客户端请求了;比如 Host,没有虚拟主机的时候,不要也是可以的,有了以后就能一个 Web 服务器跑多个 Web 应用了;还有些自定义的 HTTP 头信息,用来实现业务功能,比如 RESTful API 设计时,有些人喜欢把版本信息放 HTTP 头中去。 快递时填的单子。
    如里面是什么,有多重。 食品包装盒上的 “配料表” 。 Header可以看作给服务器或客户端的附言

    例如,当客户端向服务器发送一个HTTP请求时,请求一般包含了请求行(Request Line)、头(Header)和体(Body)。请求行包含了请求方法、资源路径和协议版本。请求体不是必须存在的,它包含了客户端发送给服务器的数据。请求头为服务器处理请求提供了额外的信息,例如客户端使用的语言和字符集等。当然如果没有请求头,服务器在大多数情况下也能够很好地处理请求,返回你所期望的结果。所以,请求头是客户端给服务器的附言,帮助服务器更好地处理请求。 理解起来其实很简单,我觉得“配料表”那个比喻相对恰当,我可以补充一下。

    HTTP本身就是一个协议,协议的目的就是为了双方(服务器和客户端)能够相互看懂,相互认知。

    现在把网络传输的HTTP包比作“食品”,厂家有义务告知消费者这个食品究竟是什么,有没有QS质量认证,有没有添加什么防腐剂,是不是转基因blur blur...当然这个厂家不能随便乱写,必须按照一定的格式规范来写,这样的格式在互联网中就叫做“协议”

    甚至于有些厂家会在包装上告诉你该怎么吃,应该冷藏呢还是常温,这里不一一列举。

    好,消费者此时从超市里将“食品”买回家,就可以根据包装上面写的内容来做自己的判断,也会根据厂家建议的做法,来储藏或者处理“食品”。

    很明显这里所说的消费者就是你平时常用的浏览器,所谓厂家,就是你们看不见的服务器。

    在HTTP协议里所谓的Header实际上也就是厂家在食品包装上注明的一切注意事项。


    当然现实生活中的这些产品说明,想必是中文就应该看的懂了,然而在计算机网络领域,所有的键值对参数都是有其相应的规范的,并且十分严谨... 身份证. 张三说的比我的形象

    信封

推荐阅读
  • 本文探讨了 RESTful API 和传统接口之间的关键差异,解释了为什么 RESTful API 在设计和实现上具有独特的优势。 ... [详细]
  • 本文介绍了如何使用JavaScript的Fetch API与Express服务器进行交互,涵盖了GET、POST、PUT和DELETE请求的实现,并展示了如何处理JSON响应。 ... [详细]
  • 前言叨逼叨iOS上传文件,可能有很多第三方的框架之类的,比如AFN或者Alamofire之类的框架,但是今天要谈论的是原生的API是如何进行文件上传。兵 ... [详细]
  • 构建Filebeat-Kafka-Logstash-ElasticSearch-Kibana日志收集体系
    本文介绍了如何使用Filebeat、Kafka、Logstash、ElasticSearch和Kibana构建一个高效、可扩展的日志收集与分析系统。各组件分别承担不同的职责,确保日志数据能够被有效收集、处理、存储及可视化。 ... [详细]
  • 本文介绍了Elasticsearch (ES),这是一个基于Java开发的开源全文搜索引擎。ES通过JSON接口提供服务,支持分布式集群管理和索引功能,特别适合大规模数据的快速搜索与分析。 ... [详细]
  • 本文探讨了为何采用RESTful架构及其优势,特别是在现代Web应用开发中的重要性。通过前后端分离和统一接口设计,RESTful API能够提高开发效率,支持多种客户端,并简化维护。 ... [详细]
  • mysql数据库json类型数据,sql server json数据类型
    mysql数据库json类型数据,sql server json数据类型 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • REST与RPC:选择哪种API架构风格?
    在探讨REST与RPC这两种API架构风格的选择时,本文首先介绍了RPC(远程过程调用)的概念。RPC允许客户端通过网络调用远程服务器上的函数或方法,从而实现分布式系统的功能调用。相比之下,REST(Representational State Transfer)则基于资源的交互模型,通过HTTP协议进行数据传输和操作。本文将详细分析两种架构风格的特点、适用场景及其优缺点,帮助开发者根据具体需求做出合适的选择。 ... [详细]
  • 本文讨论了两种不同的业务异常处理方法,并探讨了HTTP状态码的选择对前后端交互的影响。 ... [详细]
  • 运用DDD分层架构优化微服务代码设计
    在微服务实施过程中,确定合理的代码结构至关重要。本文探讨了如何利用领域驱动设计(DDD)的分层架构来优化微服务的代码模型,确保系统的可维护性和扩展性。 ... [详细]
  • 本文探讨了Web API 2中特性的路由机制,特别是如何利用它来构建RESTful风格的URI。文章不仅介绍了基本的特性路由使用方法,还详细说明了如何通过特性路由进行API版本控制、HTTP方法的指定、路由前缀的应用以及路由约束的设置。 ... [详细]
  • PHP-Casbin v3.20.0 已经发布,这是一个使用 PHP 语言开发的轻量级开源访问控制框架,支持多种访问控制模型,包括 ACL、RBAC 和 ABAC。新版本在性能上有了显著的提升。 ... [详细]
  • 技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统
    技术分享:使用 Flask、AngularJS 和 Jinja2 构建高效前后端交互系统 ... [详细]
  • 本文深入解析了Elasticsearch写入与查询的底层机制。在数据写入过程中,首先会将数据暂存至内存缓冲区,在此阶段数据尚不可被搜索。同时,为了保证数据的持久性和可靠性,系统会将这些数据同步记录到事务日志(translog)中。当内存缓冲区接近满载时,系统会触发刷新操作,将缓冲区中的数据写入到磁盘上的段文件中,从而使其可被搜索。此外,文章还探讨了查询过程中涉及的索引分片、倒排索引等关键技术,为读者提供了全面的技术理解。 ... [详细]
author-avatar
hedongsheng
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有