HTTP 基础知识

HTTP 响应信息

在向开发人员教授安全课程时,总是让我感到惊讶的一件事是他们对 HTTP 的了解是多么的少。当然,每个人都知道 HTTP 500 错误是服务器上的问题,而 404 则意味着文件丢失,但很少有人真正了解 HTTP 在较低级别上是如何工作的。这对于理解大多数 Web 应用程序漏洞至关重要,并将帮助您成为更好的 Web 开发人员,所以让我们深入了解一下!

如果您对 HTTP 有很好的了解,请跳过此部分。否则,这将是一个很好的复习。首先,让我们先从超级基础的内容开始,然后再快速进入更高级的主题 — HTTP。HTTP 是 Web 服务器和浏览器用于通信的协议。HTTP 基于请求和响应。

HTTP 响应信息

当您在浏览器中输入网页 URL 并按 Enter 键时,浏览器会发出 HTTP GET 请求。下面是一个示例:

HTTP 响应信息

上面的屏幕截图中有一些值得注意的事情。让我们看一下第一行。首先,HTTP“动词”是 GET,它通常用于检索文档、图像或其他互联网资源。我们稍后会看看其他动词。接下来,被请求的网页是“/home”。“?”后面还有什么吗?是参数,以键/值对的形式出现。最后,提供了 HTTP 版本,在本例中为 1.1。

其余行是 HTTP 标头,它们执行以下操作: 根据域 (Host:) 告诉网络服务器要检索哪个网站;报告用户代理和可接受的编码和语言;以及其他特定于浏览器的选项。

从安全角度来看,我们需要注意查询字符串中的参数会随处记录,因此我们要确保其中没有敏感或重要的内容(例如密码、电子邮件地址或 API 密钥)。

邮政

另一个 HTTP 请求是 POST,它的工作方式几乎与 GET 请求完全相同,只是参数是在请求正文中而不是在第一行发送的。这对于安全性很有好处,因为当请求通过互联网传输时,这些值通常不会默认记录在网络服务器、代理或其他软件上。

HTTP 响应信息

其他请求类型包括 OPTIONS、HEAD、PUT、DELETE 和其他一些更模糊的值,但 GET 和 POST 是最常见的。我们看一下 HTTP 响应:

HTTP 响应信息

HTTP 响应与 HTTP 请求类似,因为它们基于文本并包含 HTTP 标头。在上面的第一行,HTTP 响应返回 HTTP 状态代码。当一切顺利时,这将是 200 OK。以下是可以返回的状态代码列表:

HTTP 响应信息

在状态代码之后,会发送一些服务器标头,包括有关服务器类型及其正在运行的软件的信息。接下来,响应正文包含我们请求的数据,通常是 HTML、CSS、Javascript 或图像或 PDF 等二进制数据。

由于 HTTP 是基于文本的协议,因此很容易发出 HTTP 请求。您可以通过运行 telnet 并连接到 HTTP 服务器,然后手动发出 HTTP GET 请求来尝试此操作。输入“telnet google.com 80”亲自尝试一下。

然后,当 telnet 连接到 Web 服务器时,您可以通过键入以下内容手动发出 HTTP 请求:

“GET / HTTP/1.0(返回,返回)”

这应该返回主页的 HTTP 响应。

HTTP 响应信息

就这样,现在您已经了解了 HTTP 的基础知识。以下是重要部分:

  • HTTP 是基于文本的协议

  • 它由请求和响应组成

  • 它的响应有一个状态代码文章来源地址https://www.toymoban.com/diary/web/587.html

到此这篇关于HTTP 基础知识的文章就介绍到这了,更多相关内容可以在右上角搜索或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

原文地址:https://www.toymoban.com/diary/web/587.html

如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用
学习 Python 编程的 10 个理由
上一篇 2023年12月10日 21:28
教你一招!如何查询Python安装位置?
下一篇 2023年12月12日 10:04

相关文章

  • HTTP基础知识汇总

    云原生(Cloud Native) 的兴起, 面向服务架构 ( Service-Oriented Architecture,SOA )、 微服务 ( Microservice) 、 容器 ( Container )等相关概念与技术正在逐渐影响 CAx ( CAD / CAE / CAM ) 软件 的架构设计与开发。 在 云原生CAx 软件中, 首先需要把系统按照功能划分成不同的 服务单元 , 然后再根

    2023年04月26日
    浏览(78)
  • 简单了解 HTTP 基础知识

    HTTP(Hypertext Transfer Protocol,超文本传输协议)是用于在网络上传输数据的一种协议,对于网络开发人员来说,理解这一协议是至关重要的。由于其广泛的应用,除了在网页应用传输数据之外,它还被应用于物联网(IoT)中的数据和命令传输。 HTTP 协议的第一个版本只有一个方

    2024年04月17日
    浏览(39)
  • 深入理解 HTTP Authorization 头:基础知识

    在当今的互联网世界中,安全性贯穿于 web 应用的每个方面,HTTP Authorization 头的使用在这个过程中扮演着不可或缺的角色。它是 HTTP 请求中的一个重要部分,用来在客户端和服务器之间安全地传输认证信息。用途广泛,无论是浏览器还是其他客户端应用,都依赖它来验证用户

    2024年04月15日
    浏览(32)
  • Python 网络爬虫(二):HTTP 基础知识

    《Python入门核心技术》专栏总目录・点这里

    2024年02月04日
    浏览(45)
  • HTTP基础:学习HTTP协议的基本知识,了解请求和响应的过程

    HTTP(Hypertext Transfer Protocol,超文本传输协议)是一种用于传输超媒体文档(如HTML)的应用层协议,它是Web中最基本的协议。 HTTP请求和响应都是由客户端和服务器之间进行的。 一个完整的HTTP请求由以下几个部分组成: 请求行:包括请求方法(GET、POST等)、请求的URI和HTTP协

    2024年02月12日
    浏览(29)
  • 网络编程 tcp udp http编程流程 网络基础知识

    OSI分层:应用层 表示层 会话层 传输层 网络层 数据链路层 物理层 tcp/ip: 应用层 传输层 网络层 数据链路 ip地址:唯一标识一台主机 ipv4 32位 ipv6 128位 寻址 可以反映物理上的一个变化 MAC地址:48 固化在计算机中 ip地址又两部分构成:网络号+主机号 端口号:标识一个应用程序

    2024年02月13日
    浏览(51)
  • 基础知识:HTTP协议以及GET请求和POST请求的区别

    qq对于HTTP协议,做Web编程的开发人员再熟悉不过了。  不论是前端Html页面通过Ajax还是客户端通过 HttpClient 又或服务端与服务端之间的Rest请求,这都需要通过Http协议完成请求  。在HTTP协议中,我们最常用的是GET和POST请求,对于这两个方法,应该是最基础的东西。但是,两

    2024年02月08日
    浏览(75)
  • 【计算机基础知识3】IP 地址和子网掩码、DNS、HTTP

    目录 前言 一、IP地址和子网掩码 1. IP地址的概念 2. IP地址的分类 3. 子网掩码的概念 4. 子网掩码的用途 二、域名系统(DNS) 1. DNS的作用 2. 域名解析过程 3. 如何配置和管理域名解析 三、HTTP(超文本传输协议) 1. HTTP的概念和结构 2. 常见的HTTP请求方法 3. HTTP状态码及其含义

    2024年02月09日
    浏览(54)
  • 爬虫进阶-反爬破解1(反爬技术简介、HTTP网络基础知识、搭建代理服务)

    目录 一、反爬技术简介 二、HTTP网络基础知识 三、搭建代理服务 (一)破解Web端反爬技术 1.常见的反爬策略方向:同一时间的请求数量、请求的身份信息、浏览器和爬虫的区别 2.浏览器和爬虫的不同:异步数据加载、前端的渲染技术、逆向分析JS函数代码、浏览器调度和调试

    2024年02月10日
    浏览(83)
  • 《吐血整理》保姆级系列教程-玩转Fiddler抓包教程(1)-HTTP和HTTPS基础知识

    有的小伙伴或者童鞋们可能会好奇地问宏哥,不是讲解和分享抓包工具了怎么这里开始讲解HTTP和HTTPS协议了。这是因为你对HTTP协议越了解,你就能越掌握Fiddler的使用方法,反过来你越使用Fiddler,就越能帮助你了解HTTP协议。 Fiddler无论对开发人员或者测试人员来说,都是非常

    2024年02月16日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包