接口基础知识3:详解url

news2024/12/23 5:49:12

课程大纲 

ad8765de22cb10cff60fb564057b7cbf.jpeg

一、定义

        URL即访问的链接,是Uniform Resource Locator的缩写,译为"统一资源定位符"。

        URL是一种URI,它标识一个互联网资源,并指定对其进行操作或获取该资源的方法。可能通过对主要访问手段的描述,也可能通过网络“位置”进行标识。

url组成

URL的一般语法格式(带方括号的为可选项):

protocol://hostname[:port]/path/[:parameters][?query]#fragment

protocol

协议。比如http。

hostname

主机名。

port

端口号。若无指定,http默认为80。

path

路径。

由零或多个“/”符号隔开的字符串,一般用来表示主机上的一个目录或文件地址。

Parameters

(很少用)

用于指定特殊参数的可选项,由服务器端程序自行解释。

query

查询,传递参数。

可有多个参数,用“&”符号隔开,每个参数的名和值用“=”符号隔开。

如上节课”带参数的get请求”:http://www.baidu.com/?ie=utf-8&f=8

fragment

信息片段,指定网络资源中的片段。

类似于文章目录,比如某网页文章中多个标题,指定跳转到某标题内容。

        简单来说,URL格式有2种格式,区别在于使用域名还是IP:

        ① {协议名}://{域名}/{路径}

        举例:http://blog.csdn.net/weixin_37846886/article_id=123

        ② {协议名}://{IP}[:端口号]/{路径}

        举例:http://127.0.0.1:9999/login

域名和IP的区别与联系

                域名和IP一一对应。

3.1为什么使用域名?

        域名(Domain Name):又称网域,是由一串用点分隔的名字组成的互联网上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识(有时也指地理位置)。

        由于IP地址不方便记忆,并且不能显示地址组织的名称和性质,人们设计出了域名,并通过域名系统(DNS,Domain Name System)来将域名和IP地址相互映射,使人更方便地访问互联网,而不用去记住能够被机器直接读取的IP地址数串。

3.2 DNS实现域名和IP的映射

        DNS(Domain Name System):一套从域名到IP的映射系统。

        一个组织的系统管理机构,维护系统内的每个主机的IP和主机名的对应关系。

        如果新计算机接入网络,将这个信息注册到数据库中。

        用户输入域名的时候,会自动查询DNS服务器,由DNS服务器检索数据库,得到对应的IP地址。

3.3 域名访问网站流程 

3.4 CDN加速服务

        CDN(Content Delivery Network):内容分发网络。

        访问速度会受到网络传输速度的影响,为提升访问速度,某些服务会在不同区域部署相同的服务器(冗余),根据访问者的IP识别区域并返回距离最近的服务器IP。

        CDN工作流程:

        DNS域名解析的映射有2种:① {域名:IP};② {域名:别名(CNAME)}。

        别名(CNAME)也是一个域名,由特定的CDN服务商提供,同一个服务可能在不同区域分别部署相同服务器,具有不同IP。则该CDN服务商搭建自己的DNS服务器,存储IP。

        当DNS解析出别名,会将别名发送至其所属的CDN专用DNS服务器再进行解析,进行IP分配和返回,供访问者使用。

        举例:如百度在全国各地有服务部署,在北京输入www.baidu.com进行访问,域名解析与访问加速过程如下。

a1cce55c08d0ef765a6295bfad776a22.jpeg

此流程即域名的多级解析,可理解为:

Step1、访问者发送域名至DNS;

Step2、DNS将请求发送至百度服务集群;

Step3、百度返回距访问者最近(最快)的服务器IP(如北京服务器IP);

Step4、访问者访问返回的IP。

3.5 总结使用域名的优点

①方便访问者记忆;

②灵活,可更换与域名映射的IP(如切换后端服务);

③安全,可隐藏服务器IP信息,避免服务器受到攻击等不安全因素;

④提高访问速度(CDN加速)。

参考文章:

1、《URL格式》

https://baike.baidu.com/item/URL%E6%A0%BC%E5%BC%8F/10056474?fr=aladdin

2、《DNS(域名系统)》

https://blog.csdn.net/dreamnn/article/details/135560891

3、《超清晰的DNS入门指南,看这篇就够了》

https://zhuanlan.zhihu.com/p/696346689

4、《程序员要搞明白CDN,这篇应该够了》

https://blog.csdn.net/weixin_44129618/article/details/126501046

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

《昇思25天学习打卡营第05天|qingyun201003》

日期 心得 通过本节课的学习,学习到了通过网络获取数据集,处理数据集模型。数据模型层数据变换,模型参数解析和其对应代码中的API进行解析。 昇思MindSpore 基础入门学习 网络构建 (AI 代码解析) 网络构建 神经网络模型是由神经网络层和T…

一篇文章教你如何快速上手Spring MVC框架【万字详解|包含常用注解分析讲解】

目录 一.什么是Spring Web MVC 二.Spring MVC的使用 ▐ 建立连接 RestController RequestMapping ▐ 传递参数 1.简单类型传参 2.类对象传参(RequestParam) 3.数组&集合传参 4.JSON传参(RequestBody) 5.URL中的参数…

JavaSE 面向对象程序设计进阶 IO 压缩流 解压缩流

目录 解压缩流 压缩流 解压缩流 压缩包 压缩包里面的每一个文件在java中都是一个ZipEntry对象 把每一个ZipEntry按照层级拷贝到另一个文件夹当中 import java.io.*; import java.util.Date; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream;public cl…

清华计算几何-ConvexHull(凸包)-求极点InTriangle/ToLeft Test

ConvexHull(凸包) 凸包是什么 凸包是计算几何一个非常基础核心的概念。我理解的凸包就是给定一个点集合, 最外围的点的包围体就是凸包。如下所示: 极点(ExtremityPoint) 给定的点集合中, 如果一个点存在一条直线, 让其他所有点都在于该直线的同一侧, 则该点为极点。 非极点 …

【Java--数据结构】栈:不仅仅是数据存储,它是编程的艺术

欢迎关注个人主页:逸狼 创造不易,可以点点赞吗~ 如有错误,欢迎指出~ 目录 栈 栈的方法介绍 入栈push 出栈pop和 瞄一眼peek 判空isEmpty和判满isFull 模拟实现栈 push入栈 pop出栈和peek 测试 使用泛型实现栈 测试 使用链表实现栈&#xff08…

本地部署免费AI大模型+知识库

利用Ollama部署本地大模型 一:终端实现与大模型对话 1.去Ollama官网下载 https://ollama.com/download2.下载之后按照提示一步步安装即可 3.WinR, 输入cmd,打开命令行提示符 输入:ollama run llama3运行大模型 4.使用其他开源大模型,比如…

基于门控循环单元(GRU)的数据回归预测

代码原理 基于GRU(Gated Recurrent Unit)的数据回归预测通常涉及多输入单输出的情况。以下是简单的原理及流程: 数据准备: 准备多个时间序列作为输入特征,每个时间序列可以表示不同的变量或特征。准备一个目标变量作…

算法学习day12(动态规划)

一、不同的二叉搜索树 二叉搜索树的性质:父节点比左边的孩子节点都大;比右边的孩子节点都小; 由图片可知,dp[3]是可以由dp[2]和dp[1]得出来的。(二叉搜索树的种类和根节点的val有关) 当val为1时,左边是一定没有节点的…

写真图片视频打赏系统源码全开源无加密

这是一款开源的写真图片及视频打赏系统源码,顾名思义他可以做写真图片打赏站也可以做视频打赏站,支付对接了易支付,拥有独立代理后台,全部源码无加密,另外也可以配合付费进群使用。支付扣量、域名防洪这些基本的就不介…

基于信号处理的PPG信号滤波降噪方法(MATLAB)

光电容积脉搏波PPG信号结合相关算法可以用于人体生理参数检测,如血压、血氧饱和度等,但采集过程中极易受到噪声干扰,对于血压、血氧饱和度测量的准确性造成影响。随着当今社会医疗保健技术的发展,可穿戴监测设备对于PPG信号的质量…

修正版头像上传组件

修正版头像上传组件 文章说明核心源码展示运行效果展示源码下载 文章说明 在头像剪切上传一文中,我采用div做裁剪效果,感觉会有一些小问题,在昨天基于canvas绘制的功能中改进了一版,让代码变得更简洁,而且通用性相对高…

Linux的load(负载)

负载(load)是Linux机器的一个重要指标,直观了反应了机器当前的状态。 在Linux系统中,系统负载是对当前CPU工作量的度量,被定义为特定时间间隔内运行队列中的平均线程数。 Linux的负载高,主要是由于CPU使用、内存使用、10消…

[UTCTF2020]babymips

水一篇 32位 c写的,长得比较丑陋 进入sub-401164函数 V7的数据可以得到 unsigned char ida_chars[] {0x62, 0x6C, 0x7F, 0x76, 0x7A, 0x7B, 0x66, 0x73, 0x76, 0x50, 0x52, 0x7D, 0x40, 0x54, 0x55, 0x79, 0x40, 0x49, 0x47, 0x4D, 0x74, 0x19, 0x7B, 0x6A, 0x…

大数据之路 读书笔记 Day5 数据同步遇到的问题与解决方案

回顾 Day 4 数据同步Day 3 无线客户端的日志采集 1. 分库分表的处理 分库分表(Sharding)是数据库水平扩展的一种策略,当单个数据库的性能和存储能力无法满足应用需求时,可以采用分库分表来分散数据和查询负载。它通常包括两个方面…

钡铼4G无线RTU助力智慧能源发展实现电网远程调控

随着全球对清洁能源和高效能源管理的需求日益增长,智慧能源技术正逐渐成为推动可持续发展的重要驱动力。在这一背景下,钡铼4G无线远程终端单元正在为智慧能源的发展和电网的远程调控提供强有力的支持。 钡铼4G无线RTU:智慧能源的神经网络 钡…

数据恢复篇:适用于 Android 的恢复工具

正在摆弄 Android 设备。突然,您意外删除了一张或多张图片。不用担心,您总能找到一款价格实惠的照片恢复应用。这款先进的软件可帮助 Android 用户从硬盘、安全数字 (SD) 或存储卡以及数码相机中恢复已删除的图片。 Android 上文件被删除的主要原因 在获…

Blender使用(二)点线面基本操作

Blender使用之点线面 1.编辑模式 tab键进行切换,为了方便菜单调出,可以设置键位映射为拖动时的饼菜单。 设置好后,按住tab键移动鼠标(注意不要点击鼠标),即可弹出编辑菜单。 默认是点模式,在左上角可进行点线面的切换…

Linux系统OpenSSH出现漏洞(CVE-2024-6387)修复

CVE-2024-6387 是一个影响 OpenSSH 服务器(sshd)的严重远程代码执行(RCE)漏洞,它允许未经身份验证的攻击者在受影响的 Linux 系统上以 root 权限执行任意代码。此漏洞尤其危险,因为它可以在不需要任何用户交…

husky 和 lint-staged 构建代码项目规范

目录 前言 最简单的方法 过 scripts 来解决如果检测工具多,需要多次处理 通过 husky(哈士奇)来解决容易遗忘的问题 1. 安装 2. husky init 3. 试一试​ lint-stadge 只 lint 改动的 1. 安装 2. 修改 package.json 配置 3. 添加 npm 脚本: 4.使用 Husky…

ETL数据集成丨主流ETL工具(ETLCloud、DataX、Kettle)数据传输性能大PK

目前市面上的ETL工具众多,为了方便广大企业用户在选择ETL工具时有一个更直观性能方面的参考值,我们选取了目前市面上最流行的三款ETL工具(ETLCloud、DataX、Kettle)来作为本次性能传输的代表,虽然性能测试数据有很多相…