网联:第一章:浏览器生成消息

1.概述:

下面是我画的一张思维导图,作为概述:

2.生成http请求:

url有不同的种类,例如常见的http,ftp,mailto,不同的协议标识着他们用于不同的功能,也可以把他们看作一种url功能上的分类.不同的分类有遵守着各自的规则.也就是我们所说的协议.

2-1:那浏览器是如何解析url地址的:

url地址是一个字符串,解析的时候会根据特定的字符去拆分,其中"//" 作为一个分隔标识,他前面的标识协议,后面是服务器的名称,服务器后面的 "/",标识文件路径.有的路径在服务上不存在,如果nginx会出找相应的应用路由匹配,如果存在文件路径,会被当做文件路径使用.

2-2: http的基本思路:

图中的1:请求信息包括两部分: 对什么,进行什么操作.

其中"对什么"指的是内容,指的是资源路径,成为URI(uniform resource identifier).如具体的某一个html,一张图片 xxx.com/abc.html,  xxx.com/abc.jpg

也可以把uri理解为邮件上的地址,完成一次通信,不是只有地址就可以的,还需要邮差去送,走着送还是骑车,还是火车,这就是请求的方式,也就是"进行什么操作"

常见的请求方式:GET,POST.OPTION HEAD,PUT,DELETE等.客户端在发送数据前会先发送头字段.在发送数据.

图中2,web服务器接收到消息后,根据要求作出响应,并将响应结果放到响应信息里,其中有一个状态码用于标识成功还是失败.

2-3:生成http请求:

根据uri资源的路径和请求的方式根据协议规定生成请求信息:

第一行: 请求行.告诉服务他该进行什么样的操作.

原文地址:https://www.cnblogs.com/callmelx/p/12142652.html

时间: 2024-10-19 02:58:42

网联:第一章:浏览器生成消息的相关文章

【编程珠玑】【第一章】生成随机数、随机取样的问题

一.利用随机数函数生成随机数 问题1(<编程珠玑>习题12.1后半段): 给定一个rand(),可以产生从0到RAND_MAX的随机数,其中RAND_MAX很大(常见值:16位int能表示的最大整数32767),写出利用rand()生成[a,b]中任意整数的函数,其中a>=0, b<=RAND_MAX,且b-a<<RAND_MAX. 分析: 这是在编程工作最常见的随机函数的应用,在这里做一个起点再合适不过.把随机数区间的起点从0变为a,同时把一共RAND_MAX+1个数

高性能浏览器网络(High Performance Browser Networking) 第一章

译者注:本文是<High Performance Browser Networking>的翻译版,采用google translator tookit工具翻译,原文很多格式丢失,后续还需要统一整理. 原文请参考:http://chimera.labs.oreilly.com/books/1230000000545/ch01.html 第一章 延迟和带宽的基本概念 速度是一个特性 过去几年内,Web性能优化(WPO)作为一个新的行业快速增长,成为用户追求更高的速度和更快的用户体验的一个明显标志.

《Django By Example》第一章 中文 翻译 (个人学习,渣翻)

书籍出处:https://www.packtpub.com/web-development/django-example原作者:Antonio Melé 2016年12月10日发布(没有进行校对,有很多错别字以及模糊不清的语句,请大家见谅) 2017年2月7日精校完成(断断续续的终于完成了第一章精校,感觉比直接翻译还要累,继续加油) 2017年2月10日再次进行精校(感谢大牛@kukoo的精校!) (译者注:本人目前在杭州某家互联网公司工作,岗位是测试研发,非常喜欢python,目前已经使用Dj

HttpClient 4.3教程 第一章 基本概念

HttpClient 4.3教程 第一章 基本概念 Posted on 2013 年 10 月 9 日 1.1. 请求执行 HttpClient最基本的功能就是执行Http方法.一个Http方法的执行涉及到一个或者多个Http请求/Http响应的交互,通常这个过程都会自动被HttpClient处理,对用户透明.用户只需要提供Http请求对象,HttpClient就会将http请求发送给目标服务器,并且接收服务器的响应,如果http请求执行不成功,httpclient就会抛出异样. 下面是个很简单

20172327 2017-2018-2 《第一行代码Android》第一章学习总结

学号 2017-2018-2 <第一行代码Android>第一章学习总结 教材学习内容总结 - Android系统架构: 1.Linux内核层 Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动,音频驱动,照相机驱动,蓝牙驱动,Wi-Fi驱动,电源管理等. 2.系统运行底层 - 通过一些C/C++库来为Android系统提供了主要的特性支持 库名 功能 SQLite库 提供数据库的支持 OpenGL/ES库 提供3D绘图支持 Webkit

(16/06/09) 跟兄弟连学PHP 第一章总结:HTTP协议与WEB的关系。

前言-PREFACE  让学习成为一种习惯. PHP是一种开源免费的开发语言,具有程序开发速度快,运行快,技术本身学习快等快捷性的特点,无疑是当前WEB开发中最佳的编程语言. 第一章:LAMP网站构建 1.HTTP协议与WEB的关系 1)HTTP是超文本传输协议.协议是指双方遵循的规范.HTTP协议就是浏览器和服务器的进行'沟通'的一种规范.一次HTTP操作成为一个事务,客户机和服务器通过请求和响应完成一次会话,工作过程分为5步 (1)客户端连接到WEB服务器     一个HTTP客户端(浏览器

OSGi原理与最佳实践:第一章 OSGi框架简介(2)

OSGi原理与最佳实践:第一章 OSGi框架简介(2) 由  ValRay 发布 已被浏览4884次 共有3条评论 已被3个人收藏 2013-08-16 21:23 顶(0) 踩(0) osgi原理与最佳实践 1.1.4 开发传统类型的应用 1.1.4.1 B/S 我们首先来看一下,如何基于 OSGi 来开发 B/S 结构的应用.B/S 结构应用程序的开发,可有两个选择:一个是在 OSGi 的框架中嵌入 Http 服务器,另外一个是在 Servlet 容器中嵌入 OSGi 框架.下面分别介绍这两

第一章:Http概述

第一章:Http概述 引言 web浏览器.服务器和相关的web应用程序都是通过http相互通信的,http是现代全球英特网中使用的公共语言. 本章主要内容 1.web客户端与服务器是如何通信的 2.资源(表示web内容)来自何方 3.web事务(请求与响应)是怎样工作的 4.http通信所使用的报文(请求报文/响应报文) 5.底层TCP网络协议 6.不同的http协议变体 1.2web客户端与服务器 web内容都是存储在web服务器上的.web服务器所使用的是http协议,因此也经常称web服务

【翻译习作】 Windows Workflow Foundation程序开发-第一章01

第 1 章    欢迎来到工作流的世界 …思想如蝴蝶般飞到我身边 —— Gossard / Vedder (译注:Gossard与Vedder是来自Pearl Jam乐队的2名乐手,该句出自他们的歌曲<Even flow>) Windows Workflow可被看作是继COM+和分布式事务协调器(DTC)之后,Windows平台上最令人瞩目的一款中间件产品.它们之间的区别在于:不是每一个软件应用都需要进行分布式事务处理:但几乎每个软件都要在其内部实现工作流.为了能够领会微软设计Windows