当你在浏览器中输入url之后会发生是什么

整体过程:

浏览器如何解析网址,浏览器会根据网址的含义来生成请求信息,请求消息生成之后,浏览器会委托操作系统Web服务器发送请求(浏览器告诉操作系统接收方的ip地址,这一步需要向DNS服务器将域名转换为ip地址)

  • URL

    Uniform Resource Locator,统一资源定位符

    不只是只有http://开头的才会被称作URL,其实ftp:、file:、mailto等也可以是网址,浏览器是一个具有多种客户端功能的综合性客户端软件,访问web服务器时用"http:",访问FTP服务器时用"ftp:",浏览器以此来判断应该使用哪种功能来访问相应的数据

  • URL的格式

    上一条介绍了url的含义,url的格式会根据协议的不同而不同,现在列举几个常用的格式
    HTTP协议

    http://user:password@www.xxx.com:80/my/hello.html

    user:password绿色的字体 是指的用户名和密码,是可省略的

    @www.xxx.com红色的字体 是指Web服务器的域名

    :80蓝色的字体 是指端口,可以省略,默认是80

    /my/hello.html紫色的字体 是指文件的路径名
    ftp协议

    ftp://user:password@ftp.xxx.com:21/my/file.txt

    user:password绿色的字体 是指的用户名和密码,是可省略的

    @ftp.xxx.com红色的字体 是指FTP服务器的域名

    21蓝色的字体 是指端口,可以省略,默认是21

    /my/file.txt紫色的字体 是指文件的路径名
    读取计算机本地文件

    file://localhost/c:/my/file.txt

    localhost绿色的字体 是指计算机名,是可省略的

    c:/my/file.txt紫色的字体 是指文件的路径名

  • URL解析

    以访问web服务器为例,首先对url进行拆分,拆分为协议+web服务器名称+文件路径

  • HTTP请求消息

    请求消息分为请求行、请求头、请求体三部分组成

    请求行也是由三部分组成的,请求方法、URI、HTTP协议版本,分别用空格隔开

    请求头主要是用于描述请求正文,定义了很多信息,如支持的数据类型、语言、客户端和服务端的软件名称和版本等

    请求头之后空一行是请求体,也就是消息的主体

是不是认为组织完请求之后就会直接访问到该地址了,其实并不是。

相关推荐
LuiChun几秒前
Django-Admin WebView 集成项目技术规范文档 v2.1
后端·python·django
Pandaconda42 分钟前
【Golang 面试题】每日 3 题(四十三)
开发语言·经验分享·笔记·后端·面试·golang·go
兮动人1 小时前
Go语言快速开发入门
开发语言·后端·golang·go语言快速开发入门
大名顶顶1 小时前
【JAVA实战】如何使用 Apache POI 在 Java 中写入 Excel 文件
java·spring boot·后端·计算机·程序员·编程·软件开发
stevewongbuaa2 小时前
一些烦人的go设置 goland
开发语言·后端·golang
花心蝴蝶.6 小时前
Spring MVC 综合案例
java·后端·spring
落霞的思绪6 小时前
Redis实战(黑马点评)——关于缓存(缓存更新策略、缓存穿透、缓存雪崩、缓存击穿、Redis工具)
数据库·spring boot·redis·后端·缓存
m0_748255656 小时前
环境安装与配置:全面了解 Go 语言的安装与设置
开发语言·后端·golang
SomeB1oody11 小时前
【Rust自学】14.6. 安装二进制crate
开发语言·后端·rust
患得患失94913 小时前
【Django DRF Apps】【文件上传】【断点上传】从零搭建一个普通文件上传,断点续传的App应用
数据库·后端·django·sqlite·大文件上传·断点上传