6.2.8 网络基本服务----万维网(www)

6.2.8 网络基本服务----万维网(www)

万维网即www(World Wide Web)是开源的信息空间,使用URL也就是统一资源标识符标识文档和Web资源,使用超文本链接互相连接资源,万维网并非某种特殊的计算机网络,是一个大规模的、联机式的信息储藏所,使用链接的方法能非常方便地从因特网上的一个站点访问另一个站点,从而主动地按需获取丰富的信息,万维网的访问方式称为**“链接”**,Web是信息时代发展的核心,它使数以亿计的人们用来在因特网上交互的主要工具。

Web是英国科学家蒂姆·伯纳斯-李在1989发明的,1990年蒂姆·伯纳斯-李在瑞士欧洲核子研究中心工作室编写了第一个Web浏览器。

网页主要使用超文本标记语言HTML格式化和注释的文本文档,除了格式化的文本,网页还包含图片、视频和软件组件,他们作为由多媒体内容组成的连贯的页面,呈现在用户浏览器中。

如图

超链

网页中嵌入的超链使用户能够在网页间导航,具有共同主题、共同域名或者二者都相同的多个网页可以被称为一个网站WebSite,网站内容主要由网络发行商或者是互动来提供,互动中由用户提供内容,或者用户及其动作产生内容,网站大多数是提供信息的,也可能主要是为了娱乐,或是商业目的。

一、万维网的工作方式

万维网一客户服务器方式工作。浏览器就是在用户计算机上的万维网客户程序。万维网文档所驻留的计算机则运行服务器程序,因此这个计算机也被称为万维网服务器。客户程序向服务器程序发出请求,服务器程序向客户程序送回客户所要的万维网文档。在一个客户程序主窗口上显示出的万维网文档称为页面(page)

二、万维网必须解决的问题

  1. 怎样标志分布在整个因特网上的万维网文档?

    使用统一资源定位符URL(Uniform Resource Locator)来标志万维网上的各种文档,使每一个文档在整个因特网的范围内具有唯一的标识符URL。

  2. 用什么协议实现万维网上各种超链的链接?

    1. 万维网客户程序与万维网服务器程序之间进行交互所使用的协议,是超文本传送协议HTTP(HyperText Transfer Protocol)。
    2. HTTP是一个应用程协议,它使用TCP连接进行可靠的传送。
  3. 怎样使各种万维网文档都能在因特网上的各种计算机显示出来,同时使用户清楚的知道在什么地方存在着超链?

    超文本标记语言HTML(HyperText Markup Language)使得万维网页面的设计者可以很方便地用一个超链从本页面的某处链接到因特网上的任何一个万维网页面,并且能够在自己的计算机屏幕上将这些页面显示出来。

  4. 怎样使用户能够很方便地找到所需的信息?

    为了在万维网上方便地查找信息,用户可以使用各种搜索用具,如百度、谷歌

三、统一资源定位符URL

统一资源定位符URL是对可以从因特网上得到的资源的位置和访问方法的一种简洁的表示。

URL给资源的位置提供一种抽象的识别方法,并用这种方法给资源定位。

只要能够对资源定位,系统就可以对资源进行各种操作,如存取、更新、替换和查找其属性。

URL相当于一个文件名在网络范围的扩展。因此URL是与因特网相连的机器上任何可访问对象的一个指针。

URL由以冒号隔开的两大部分组成,并且在URL中的字符对大写或小写没有要求。URL的一般形式是:

URL

URL中的主机是存放资源的主机,也就是前面我们学习的在因特网中的域名(6.2.1 网络基本服务—域名解析系统DNS),当端口为默认值时,端口可以省略不写,路径也可以省略。使用HTTP访问方式时如果省略路径的话就相当于访问Web服务器根目录上的默认文档,该文档也被成为首页或者主页。

四、超文本、超媒体、超文本传送协议HTTP

Ted Nelson 1963年新创了hypertext和hypermedia

  1. 超文本(hypertext)是显示在计算机或其他电子设备商,具有超链(hyperlink)指向其他文本的文本

    <a href = "http://www.w3.org">W3C organization website</a>
    

    超文本页面通过超链相互连接,用户通过超链能够立即访问其他文本,一般通过鼠标点击、按键或者触摸屏幕激活超链。

  2. 超媒体(hypermedia)是超文本的扩充,是含有超链的图片、视频和声音以及文本的复合体。

超文本与超媒体的区别是文档内容不同,超文本文档仅包含文本信息,而超媒体文档除了包含文本还包含其他表示方式的信息如。图片、图像、动画以及声音,目前超文本也常用于使用超媒体更合适的地方,也就是说超文本这个术语更常用。

万维网是分布式超媒体(hypermedia)系统。超文本、超媒体页面通过超链接相互连接。访问页面需要使用HTTP协议,它是万维网客户程序与服务器程序进行交互所使用的协议。

HTTP是面向事务的(transcation-oriented)应用层协议,是在万维网上可靠地交换文件(各种多媒体文件)的重要基础。

五、HTTP的工作过程

如图

工作过程

  1. 先建立一个TCP连接
  2. 在连接上发送HTTP请求报文
  3. 服务器收到HTTP请求后将请求的资源发送给客户。
  4. 在一条个TCP连接上,可以传送多对的HTTP请求与响应报文,传输完毕后释放TCP连接。

六、示例

我们通过一个示例来了解一下用户点击超链后发生了哪些事件。

  1. 浏览器分析超链指向页面“CSDN”的URL。

  2. 浏览器向DNS服务器请求解析www.csdn.net的IP地址

  3. 域名系统解析出CSDN的Web服务器的IP地址

  4. 浏览器与Web服务器建立TCP连接

  5. 浏览器发出取文件HTTP请求:

    GET/s/222/t/1100/41/fd/info82429.htm HTTP/1.1
    
  6. Web服务器做出响应,把文件info82429.htm发送给浏览器

  7. TCP连接释放

  8. 浏览器显示info82429.htm中的所有文本

这里需要注意的是这里只是给出了info82429.htm文件的下载过程,其实当前一个网页一般都包含多个元素也被称为对象,有HTML文档、图片、JS文档、CSS文档,打开一个网页时会涉及多个对象的下载,每个对象需要用一对HTTP请求与响应报文来传送。我们可以使用浏览器自带的捕获工具捕获的下载网页流量摘要可以看出页面的下载包含一个HTML文档,多个脚本,和多个图片的下载,这些网页元素基于若干个TCP连接来下载,每个TCP连接下载一个或者多个元素。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/23194.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringCloud分布式搜索引擎、数据聚合、ES和MQ的结合使用、ES集群的问题

目录 数据聚合 聚合的分类 ​编辑 DSL实现Bucket聚合 ​编辑 DSL实现Metrics聚合​编辑 RestAPI实现聚合 对接前端接口​编辑 自定义分词器​编辑 Completion suggester查询 Completion suggester查询 酒店数据自动补全 实现酒店搜索框界面输入框的自动补全 数据同步问…

ASO优化之在海外如何进行竞品分析

进行竞争对手研究&#xff0c;需要分析当前的市场形势&#xff0c;确定竞争对手表现的模式&#xff0c;并将其应用到我们应用营销策略中。不同的应用可以在直观的用户界面上进行简单的比较&#xff0c;很容易看到长期趋势。 在App Store和Google Play上获取竞争对手评论区的信…

怎么用PDF派工具将Word转成PDF

Word是我们最常用的一种格式文件&#xff0c;它易于编辑&#xff0c;但是安全性和稳定性较差&#xff0c;有时候我们发送给别人的Word文件&#xff0c;接收到打开内容已经乱码。遇到这种情况&#xff0c;我们可以优先将Word文件转换成稳定性好的PDF文件。那么如何进行文件格式转…

opencv 基础学习08-图像通道操作

opencv 基础学习08-图像通道操作 什么是图像通道&#xff1f;通道操作&#xff1a;**1 通过索引拆分**2 通过opencv 函数拆分通道合并 什么是图像通道&#xff1f; OpenCV的通道拆分功能可用于将多通道图像拆分成单独的通道&#xff0c;这在图像处理和计算机视觉任务中具有许多…

7月6日华为云盘古气象大模型登上《Nature》杂志:相比传统数值预报快10000倍

7月6日&#xff0c;国际顶级学术期刊《自然》&#xff08;Nature&#xff09;杂志正刊发表了华为云盘古大模型研发团队的最新研究成果——《三维神经网络用于精准中期全球天气预报》&#xff08;《Accurate medium-range global weather forecasting with 3D neural networks》…

解析!1V1直播源码开发搭建技术实时语音识别翻译功能的应用

语言是我们人类交流的工具&#xff0c;它的种类繁多&#xff0c;比如世界语言&#xff0c;像是中国的汉语、英国的英语、法国的法语等&#xff1b;又或是我们中国的方言&#xff0c;像是山东话、北京话、上海话等。可谓是五花八门&#xff0c;争奇斗艳&#xff0c;每一种世界语…

thinkphp 上传图片

public function upload_img(){// 读取图片资源// 存储路径$path "uploads/avatar";$file request()->file(background_img);// 存储图片$info $file->rule(uniqid)->move($path);// 存储成功if ($info) {//获取到上传图片的路径名称$name_img $path . …

利用ChatGPT场景化学习英语听说读写

大家好&#xff0c;我是可夫小子&#xff0c;关注AIGC、读书和自媒体。解锁更多ChatGPT、AI绘画玩法。加我&#xff0c;备注&#xff1a;chatgpt&#xff0c;拉你进群。 我们从初中就开始学习英语&#xff0c;到大学也有小十年&#xff0c;在这个过程中&#xff0c;我们投入了很…

卷积神经网络(CNN)原理详解

近些年人工智能发展迅速&#xff0c;在图像识别、语音识别、物体识别等各种场景上深度学习取得了巨大的成功&#xff0c;例如AlphaGo击败世界围棋冠军&#xff0c;iPhone X内置了人脸识别解锁功能等等&#xff0c;很多AI产品在世界上引起了很大的轰动。 而其中 卷积神经网络&am…

线性代数 4 every one(线性代数学习资源分享)

Linear Algebra 4 Every One 版权说明&#xff0c;以下我分享的都是一个名叫Kenji Hiranabe的日本学者&#xff0c;在github上分享的&#xff0c;关于Gilbert Strang教授所撰写的《Linear Algebra for Everyone》一书的总结&#xff0c;更像是一个非常精美的线性代数手册&#…

Verilog 学习之路

循环 7-10 代码段 generategenvar i;for (i0; i<8; i i1) begin: my_block_nameassign out[i] in[8-i-1];end endgenerate解释 该代码使用了 S y s t e m V e r i l o g SystemVerilog SystemVerilog 中的 g e n e r a t e generate generate 构造&#xff0c;它允许在…

FreeRTOS实时操作系统(十五)Tickless低功耗模式

系列文章目录 文章目录 系列文章目录低功耗模式Tickless低功耗模式宏定义配置 实验测试 低功耗模式 在之前的逻辑开发中学习过STM32的低功耗模式&#xff0c;在FreeRTOS中的低功耗模式&#xff0c;方便操作系统进入低功耗模式。 stm32中的低功耗模式&#xff1a; Tickless低…