HTTP介绍(一)
超文本传输协议(HTTP)是一种用于分布式,协作式超媒体信息系统的应用程序层协议。HTTP是万维网(World Wide Web)数据通信的基础,超文本文档包括指向用户可以轻松访问的其他资源的超链接,例如,通过单击鼠标或通过在Web浏览器中点击屏幕。
技术概述
HTTP作为客户端-服务器计算模型中的请求-应答协议。例如,一个网页浏览器可能是客户端,一个在计算机上运行,托管在网站上的应用程序可能是服务器。客户端向服务器提交HTTP请求消息。服务器提供资源(例如HTML文件和其他内容)或代表客户端执行其他功能,将应答消息返回到客户端。应答包含有关请求的完成状态信息,并且还可能在其消息正文中包含请求的内容。
Web浏览器是用户代理(UA)的示例。其他类型的用户代理包括由搜索服务提供商使用的索引软件(网络爬虫),语音浏览器,移动应用,以及其他软件访问、消耗或显示网页内容。
HTTP旨在允许中间网络元素改善或启用客户端与服务器之间的通信。高流量的网站通常会受益于Web缓存服务器,该服务器代表上游服务器交付内容以缩短应答时间。Web浏览器缓存以前访问的Web资源,并在可能的情况下重用它们以减少网络流量。通过与外部服务器中继消息,专用网络边界处的HTTP代理服务器可以促进与没有全局可路由地址的客户端之间的通信。
HTTP是在Internet协议套件的框架内设计的应用程序层协议。常用的是底层和可靠传输层协议以及传输控制协议(TCP)。但是,HTTP可以修改为使用不可靠的协议,例如HTTPU和简单服务发现协议(SSDP)中的用户数据报协议(UDP )。
使用统一资源标识符(URI)方案http和https,通过统一资源定位符(URL)标识HTTP资源并将其放置在网络上。如RFC 3986中所定义的那样,URI被编码为HTML文档中的超链接,以形成相互链接的超文本文档。
HTTP / 1.1是原始HTTP(HTTP / 1.0)的修订版。在HTTP / 1.0中,为每个到同一服务器的资源请求都建立了单独连接。HTTP / 1.1可连接多次重复使用,在页面已交付之后下载图片、脚本、样式表等等。因而随着TCP连接的建立,HTTP/1.1通信的延迟更少,但同时也带来了相当大的开销。
HTTP会话
HTTP会话是一系列网络请求-应答事务。HTTP客户端通过建立到服务器上特定端口的传输控制协议(TCP)连接(通常是端口80,偶尔是端口8080)来发起请求。侦听该端口的HTTP服务器正在等待客户端的请求消息。收到请求后,服务器将发回状态行(例如“ HTTP / 1.1 200 OK”)和其自身的消息。虽然也可能会返回错误消息或其他信息,该消息的主体主要是请求的资源。
HTTP会话状态:HTTP是一种无状态协议。无状态协议不需要HTTP服务器在多个请求的持续时间内保留有关每个用户的信息或状态。但是,某些Web应用程序使用HTTP cookie或Web表单内的隐藏变量来实现状态或服务器端会话。
HTTP认证
HTTP提供了多种身份验证方案,例如基本访问身份验证和摘要访问身份验证,它们通过挑战-应答机制进行操作。借此方式,服务器在提供请求的内容之前识别访问队象并对其提出质疑和询问。
HTTP通过一组可扩展的挑战-应答认证方案,提供了用于访问控制和认证的通用框架,服务器可以使用挑战-应答认证方案来质疑和询问客户端请求,客户端可以使用它来提供认证信息。
身份验证领域
HTTP身份验证规范还提供了一个任意的、特定于实现的构造,用于进一步将公用的资源划分给定根URI。如果存在,则将领域值字符串与规范的根URI结合以形成质疑和询问的保护空间组件。实际上,这允许服务器在一个根URI下定义单独的身份验证范围。
关于EDI更多问题探讨,欢迎私信或评论。
注:文案部分内容来源于网络,版权归原创作者所有,如有侵犯到您的权益,请您联系我们进行删除,给您带来困扰,我们深感抱歉。
HTTP介绍(一)的更多相关文章
- CSS3 background-image背景图片相关介绍
这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...
- MySQL高级知识- MySQL的架构介绍
[TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...
- Windows Server 2012 NIC Teaming介绍及注意事项
Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...
- Linux下服务器端开发流程及相关工具介绍(C++)
去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...
- JavaScript var关键字、变量的状态、异常处理、命名规范等介绍
本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...
- HTML DOM 介绍
本篇主要介绍DOM内容.DOM 节点.节点属性以及获取HTML元素的方法. 目录 1. 介绍 DOM:介绍DOM,以及对DOM分类和功能的说明. 2. DOM 节点:介绍DOM节点分类和节点层次. 3 ...
- HTML 事件(一) 事件的介绍
本篇主要介绍HTML中的事件知识:事件相关术语.DOM事件规范.事件对象. 其他事件文章 1. HTML 事件(一) 事件的介绍 2. HTML 事件(二) 事件的注册与注销 3. HTML 事件(三 ...
- HTML5 介绍
本篇主要介绍HTML5规范的内容和页面上的架构变动. 目录 1. HTML5介绍 1.1 介绍 1.2 内容 1.3 浏览器支持情况 2. 创建HTML5页面 2.1 <!DOCTYPE> ...
- ExtJS 4.2 介绍
本篇介绍ExtJS相关知识,是以ExtJS4.2.1版本为基础进行说明,包括:ExtJS的特点.MVC模式.4.2.1GPL版本资源的下载和说明以及4种主题的演示. 目录 1. 介绍 1.1 说明 1 ...
- ExtJS 4.2 组件介绍
目录 1. 介绍 1.1 说明 1.2 组件分类 1.3 组件名称 1.4 组件结构 2. 组件的创建方式 2.1 Ext.create()创建 2.2 xtype创建 1. 介绍 1.1 说明 Ex ...
随机推荐
- 【二分图】HEOI2012 朋友圈
题目内容 洛谷链接 在很久很久以前,曾经有两个国家和睦相处,无忧无虑的生活着. 一年一度的评比大会开始了,作为和平的两国,一个朋友圈数量最多的永远都是最值得他人的尊敬,所以现在就是需要你求朋友圈的最大 ...
- 16.深入k8s:Informer使用及其源码分析
转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 由于这部分的代码是在client-go 中,所以使用的源码版本是client-go 1. ...
- goland 注册
注意:本教程已过期 请使用其他人教程激活最新版 https://www.789zhao.com/blog/JC08EIFBS9TM.html https://shimo.im/docs/dKYC ...
- linux(centos8):awk在系统运维中的常用例子
一,awk的作用 1,用途 AWK是一种处理文本文件的语言, 是一个强大的文本分析工具 2,awk和sed的区别 awk适合按列(域)操作, sed适合按行操作 awk适合对文件的读取分析, sed适 ...
- centos8平台使用iotop监控磁盘io
一,iotop的作用: iotop是监视磁盘I/O使用状况的top类工具, 可以针对进程和线程统计io的使用情况 说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblog ...
- Java 8 中的抽象类和接口到底有啥区别?
上一篇栈长发了这篇<Java 8 有多牛逼?打破一切你对接口的认知!>,帮助许多人解开了疑惑,还有读者留言说两者还有啥区别,故引发了此篇: 在我们面试时也会经常遇到面试官问抽象类和接口的区 ...
- 【应用服务 App Service】App Service中抓取网络日志
问题描述 众所周知,Azure App Service是一种PaaS服务,也就是说,IaaS层面的所有内容都由平台维护,所以使用App Service的我们根本无法触碰到远行程序的虚拟机(VM), 所 ...
- CentOS 网卡固定地址配置
修改4个文件后重启网卡 vim /etc/default/grub GRUB_CMDLINE_LINUX="resume=UUID=05dbb36b-dbba-40a3-ba99-1b044 ...
- 边界层吞吸技术(BLI)
气流在机体表面前进时,由于受到摩擦,其速度会不断降低,从而会产生湍流甚至气流分离,而流动分离又会造成大量紊流.涡,使升力大量损失,同时也会造成阻力急剧增加.边界层吞吸技术就是一种对附面层气流" ...
- 理解Margin边距塌陷与box-sizing的问题
父与子塌陷问题 子盒子与父盒子相互影响,margin值会重叠,谁大听谁的 运行结果: box-sizing box-sizing 原始属性值: content-box,该属性对于盒子尺寸来说,并不会让 ...