网络编程技术

您所在的位置:网站首页 简述本田ima系统的组成及各部分的主要特点 网络编程技术

网络编程技术

2024-06-29 13:26| 来源: 网络整理| 查看: 265

Web系统构成与工作原理 1.1 Web系统的发展历程

转自课件,仅供学习使用 C/S结构:客户机和服务器结构 如QQ、迅雷、魔兽争霸等需要下载安装客户端软件的系统 B/S架构:不需要安装客户端软件,它运行在客户端的浏览器之上,系统升级或维护时只需更新服务器端软件即可 混合型架构:QQ收藏

1989年,欧洲粒子物理实验室(CERN)的Tim Berners-Lee构思了Web(万维网)。他提出了HTTP协议和HTML语言,编写了世界上第一个Web服务器HTTPD和第一个浏览器,并全部放在互联网上免费传播1994年,欧洲粒子物理实验室(CERN)和麻省理工学院(MIT)签订协议成立World Wide Web Consortium (即W3C,网址是www.w3.org),由Tim Berners-Lee任主席。 1.2 Web系统构成与工作原理

Web系统的构成:

Web服务器Web浏览器超文本传输协议HTTP (HyperText Transfer Protocol)超文本标记语言HTML(HyperText Markup Language)

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

://:/

建立连接的过程: (1) 浏览器分析超链指向页面的 URL。 (2) 浏览器向 DNS 请求解析IP 地址。 (3) 域名系统 DNS 解析目的服务器的 IP 地址。 (4) 浏览器与服务器建立 TCP 连接 (5) 浏览器发出取文件命令: GET index.html。 (6) 服务器给出响应,把文件 index.html 发给浏览器。 (7) TCP 连接释放。 (8) 浏览器显示“目的”文件 index.html 中的所有文本。

Web浏览器核心功能: 渲染引擎(layout engineer或者Rendering Engine),对语法进行解析,并渲染网页 JS引擎,对JavaScript进行解释、编译和执行

1.3HTTP协议

HTTP 是一个应用层协议,它使用 TCP 连接进行可靠的传送。 HTTP 有两类报文: 请求报文——从客户向服务器发送请求报文。 响应报文——从服务器到客户的回答。 HTTP 是面向正文的(text-oriented),在报文中的每一个字段都是一些 ASCII 码串,因而每个字段的长度都是不确定的。Web程序引入了Session和Cookie机制来维护状态,确定同一个客户端的这次请求和上次请求来自同一个客户端。无状态不代表HTTP不能保持TCP连接 打开一个网页一般需要浏览器发送很多次Request

请求报文: 在这里插入图片描述 1、请求方法:指出客户请求服务器执行的一般操作。 HTTP/1.1中定义了八种请求方法,其中GET、POST、HEAD是常用请求方法。

GET :请求获取Request-URI所标识的资源,“获取/查操作”POST: 在Request-URI所标识的资源后附加新的数据 ,“改操作”HEAD: 请求获取由Request-URI所标识的资源的响应消息报头PUT:请求服务器存储一个资源,并用Request-URI作为其标识, “增操作”DELETE:请求服务器删除Request-URI所标识的资源 “删操作”TRACE:请求服务器回送收到的请求信息,主要用于测试或诊断CONNECT: 保留将来使用OPTIONS:请求查询服务器的性能,或者查询与资源相关的选项和需求

2、URI:统一资源标识,简单地讲被请求资源所处的地址,如:/

3、HTTP版本:HTTP/1.1,高版本的服务器接受低版本客户的请求,并向客户发送同样版本的应答;高版本的客户接受低版本服务器的应答。

响应报文: HTTP响应消息结构:状态行(status line)、报头和实体主体三部分组成。 状态行由协议版本、状态码、原因短语3个元素组成 状态代码有三位数字组成,第一个数字定义了响应的类别

1xx:指示信息–表示请求已接收,继续处理2xx:成功–表示请求已被成功接收、理解、接受3xx:重定向–要完成请求必须进行更进一步的操作4xx:客户端错误–请求有语法错误或请求无法实现5xx:服务器端错误–服务器未能实现合法的请求

常见状态代码、状态描述、说明:

200 OK //客户端请求成功400 Bad Request //客户端请求有语法错误,不能被服务器所理解401Unauthorized //请求未经授权403 Forbidden //服务器收到请求,但是拒绝提供服务404 Not Found/请求资源不存在, eg:输入了错误的URL500 Internal Server Error //服务器发生不可预期的错误503 Server Unavailable //服务器当前不能处理客户端的请求

HTTP消息报头: HTTP消息报头包括普通报头、请求报头、响应报头、实体报头。每一个报头域都是由名字+“: ”+空格+值 组成,消息报头域的名字是大小写无关的

HTTP/2的新特性: 二进制协议:使用二进制替代明文,更容易解析,但可读性却不如HTTP/1.x。 多路传输:一旦建立了 TCP 连接,相同连接内的所有流都可以同过这个 TCP 连接异步发送,而不用另外打开连接。 HPACK 请求头部压缩:当我们在同一客户端上不断地访问服务器时,许多冗余数据在头部中被反复发送,为了解决这个问题,HTTP/2引入了头信息压缩。 服务器推送:对于服务器来说,当它知道客户端需要一定的资源后,它可以把数据推送到客户端,即使客户端没有请求它。 请求优先级:客户端可以在 HEADERS帧中包含优先级信息来为流指定优先级。 安全性:HTTP/2定义了TLS的轮廓,包括版本、密码套件和用到的扩展。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3