URI到底是個啥

URI是統一資源標識符(Uniform Resource Identifier),URL是統一資源定位符(Uniform Resource Locator)。

具體如何標記和區分服務器上的資源用的其實就是URI,因為其經常出現在瀏覽器的地址欄里,所以也俗稱“網址”。但實際上URI和URL并不是一個東西,只不過HTTP的世界里通常網址都是URL,所以二者有時候被混淆了。

URI格式

下面的這張圖顯示了 URI 最常用的形式,由 scheme、host:port、path 和 query 四個部分組成,但有的部分可以視情況省略。
在這里插入圖片描述

URI的基本組成

scheme

就是協議名,一般是http、https、ftp等,瀏覽器或者應用程序看到scheme后會調用下游相應API,沒有scheme后面的東西就沒法處理。
在 scheme 之后,必須是三個特定的字符“😕/”,它把 scheme 和后面的部分分離開。

authority

表示資源所在主機名,通常形式是host:port

主機名可以是 IP 地址或者域名的形式,必須要有,否則瀏覽器就會找不到服務器。但端口號有時可以省略,瀏覽器等客戶端會依據 scheme 使用默認的端口號,例如 HTTP 的默認端口號是 80,HTTPS 的默認端口號是 443。

有了協議名和主機地址、端口號,再加上后面標記資源所在位置的path,瀏覽器就可以連接服務器訪問資源了。path 采用了類似文件系統“目錄”“路徑”的表示方式,因為早期互聯網上的計算機多是 UNIX 系統,所以采用了 UNIX 的“/”風格。

URI 的 path 部分必須以“/”開始,也就是必須包含“/”,不要把“/”誤認為屬于前面 authority。

query

URI 后面還有一個“query”部分,這是對請求的服務器資源進行額外操作需要的參數,例如商品列表分頁等情況,它在 path 之后,用一個“?”開始,但不包含“?”,表示對資源附加的額外要求。

查詢參數 query 有一套自己的格式,是多個“key=value”的字符串,這些 KV 值用字符“&”連接,瀏覽器和客戶端都可以按照這個格式把長串的查詢參數解析成可理解的字典或關聯數組形式。

URI編碼

正常來說URI僅支持ASCII的,但是中文、日文或者有特殊含義的“&?”等字符咋辦呢?這里就需要轉義了。它們都需要轉為十六進制并在轉成的16進制前加上%

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/713835.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/713835.shtml
英文地址,請注明出處:http://en.pswp.cn/news/713835.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Verilog(未完待續)

Verilog教程 這個教程寫的很好,可以多看看。本篇還沒整理完。 一、Verilog簡介 什么是FPGA?一種可通過編程來修改其邏輯功能的數字集成電路(芯片) 與單片機的區別?對單片機編程并不改變其地電路的內部結構&#xff0…

Parallel Computing - 一文講懂并行計算

目錄 Throughput/LatencySerial ComputingParallel ComputingTypes of parallel computersSimple 4-width SIMDAmdahls lawTypes of parallelism**Data Parallel Model**Task parallel PartitioningDomain DecompositionFunctional Decomposition CommunicationsExample that d…

java調用chatgpt接口,實現專屬于自己的人工智能助手

文章目錄 前言導包基本說明請求參數響應參數創建請求和響應的VO類 代碼編寫使用最后說明 前言 今天突然突發奇想,就想要用java來調用chatget的接口,實現自己的聊天機器人,但是網上找文章,屬實是少的可憐(可能是不讓發吧)。找到了…

ESP32 web 對接華為云平臺--MQTT協議

文章目錄 前言一、MQTT協議二、如何使用MQTT協議對接華為云1.注冊華為云賬號2.設備接入中創建資源空間3.如何連接4.通過MQTT.fx工具做初步對接4.1 設置連接信息4.2 連接平臺 5.查看平臺設備信息 三. 設備測對接平臺1.ESP測引入MQTT庫2.編碼2.1前端編碼修改2.2 后端接口修改 3.M…

element-plus+vue3表單含圖片(可預覽)(線上圖片)

一、要實現的效果: 二、如果期間出現這樣的效果(表格穿透過來了),加上了這行代碼就可以了: preview-teleported“true” 如果僅測試用,建議使用線上圖片鏈接的形式,免得本地地址不生效&#xf…

SSH 的兩種認證方式

SSH(Secure Shell)提供了幾種不同的認證方式,其中兩種最常見的方式是密碼認證和密鑰認證。以下是它們的詳細介紹: 密碼認證: 原理:用戶在連接時輸入用戶名和密碼,然后將密碼傳輸到遠程服務器進行…

數學實驗-Matlab使用(1)

使用方法以及筆記均在文件中 class1_func1.m function f class1_func1(x) % f為輸出,輸出有多個時需要用中括號以矩陣的方式包起來 % x為輸入f sin(x)class1_func2.m function [a,b,u,v] class1_func2(x,y)[a,b] eig(x)[u,v] eig(y)class1.m % 當語句后有…

yolov9從頭開始訓練

yolov9從頭開始訓練 一、準備數據集 數據集相關文件存放布局如下 yolov9-datasets ├── train │ ├── images │ │ ├── image.jpg │ │ ├── │ └── labels │ ├── image.txt │ ├── ├── valid │ ├── images │ │ ├── image.jpg │ │ ├─…

吳恩達deeplearning.ai:模型選擇交叉驗證測試集的訓練方法

以下內容有任何不理解可以翻看我之前的博客哦:吳恩達deeplearning.ai專欄 在上一節中,我們了解了如何利用測試集來評估模型性能。今天我們來進一步完善這個想法,讓你使用該技術自動選擇一個更好的模型。 文章目錄 模型選擇交叉驗證 Cross Va…

SpringBoot 框架(上)

SpringBoot SpringBoot概述依賴管理自動配置SpringBoot 注解使用ConfigurationImport(value {Cat.class,Dog.class})ImportResource(locations "classpath:beans.xml") yaml 標記語言概述基本語法數據類型字面量對象數組 使用細節 Rest 風格請求處理概述注意事項 接…

vue2 開發記錄

el-select 如何修改選擇項的樣式/el-select-dropdown__item 文字上下顯示 測試代碼 <div stylemargin-left: 100px><!-- 測試代碼--><el-select filterablesizemini><div classxxx-el-select><el-optionv-foritem in [{key:1,des:2,…

AVT Prosilica GC Vision Cameras 相機視覺說明使用安裝。具體詳情內容可參看PDF目錄內容。

AVT Prosilica GC Vision Cameras 相機視覺說明使用安裝。具體詳情內容可參看PDF目錄內容。

TikTok矩陣系統功能怎么寫?常用源代碼是什么?

TikTok矩陣系統的功能是如何編寫的?又有哪些常用的源代碼支撐這些功能呢?本文將通過五段源代碼的分享&#xff0c;為大家揭開TikTok矩陣系統的神秘面紗。 一、TikTok矩陣系統的核心功能 TikTok的矩陣系統涵蓋了多個核心功能&#xff0c;包括但不限于用戶管理、內容分發、推…

【接口測試】HTTP協議介紹

目錄 介紹 HTTP狀態碼 HTTP報文 請求方法 HTTP版本 HTTP標頭 通用標頭 請求標頭 響應標頭 get 編碼 post 編碼 RESTful風格 HTTPS 絕大多數的Web服務接口都是基于HTTP協議進行通信的&#xff0c;包括RESTful API和SOAP等。了解HTTP協議可以幫助測試人員理解接口的…

回溯算法題單???

力扣&#xff1a; 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 216. 組合總和 III - 力扣&#xff08;LeetCode&#xff09; LCR 080. 組合 - 力扣&#xff08;LeetCode&#xff09; LCR 082. 組合總和 II - 力扣&#xff08;LeetCode&#xff09; LCR 083. 全排列…

【多線程】CAS詳解

目錄 &#x1f334;什么是 CAS&#x1f338;CAS 偽代碼 &#x1f38d;CAS 是怎么實現的&#x1f340;CAS 有哪些應?&#x1f338;實現原子類&#x1f338;實現自旋鎖 &#x1f333;CAS 的 ABA 問題&#x1f338;**什么是 ABA 問題**&#xff1f;&#x1f338;ABA 問題引來的 B…

【C++】核心編程--函數高級

文章目錄 1. 函數的默認參數2. 函數占位參數3. 函數重載4. 注意事項 1. 函數的默認參數 在C中&#xff0c;函數的形參列表中的形參是可以有默認值的 //語法&#xff1a; 返回值類型 函數名 (參數 默認值){} #include<iostream> using namespace std; //函數默認參數 //如…

異常值檢測-3σ法提交 代碼注釋

背景信息里面都給了相應的答案&#xff0c;但我們可以多了解一下代碼的含義&#xff0c;而不是簡單的復制粘貼 import pandas as pd import matplotlib.pyplot as plt from scipy import stats import numpy as npdata pd.read_csv("src/death.csv", index_colUnna…

ASPICE實操中的那點事兒-如何避免重復性測試

寫在前面 ASPICE理解起來容易&#xff0c;畢竟是有條有理的。但實操起來&#xff0c;尤其是把ASPICE各過程域做全的時候&#xff0c;會遇到各種各樣的問題&#xff08;不是技術問題有多難&#xff0c;而是該如何做選擇&#xff0c;如何既能符合ASPICE要求&#xff0c;保證過程質…

智慧城市建設的新里程碑:公共服務電子支付大屏

隨著科技的飛速發展&#xff0c;我們的生活正在經歷前所未有的變革。電子支付的出現&#xff0c;無疑是這場變革中的一大亮點&#xff0c;它不僅改變了我們日常的支付方式&#xff0c;更成為智慧城市建設的重要一環&#xff0c;為公眾提供了更加便捷、高效的服務體驗。 在以前&…