般我們?nèi)粘T谏暇W(wǎng)的時(shí)候,會(huì)在瀏覽器的地址欄里輸入一個(gè)網(wǎng)站的 "網(wǎng)址",點(diǎn)擊下回車,就會(huì)跳到你想去的網(wǎng)站,就類似這樣
但其實(shí),叫做 "網(wǎng)址" 并不是特別的準(zhǔn)確,確切地說(shuō),應(yīng)該叫做 URL
那到底啥是 URL 呢? 不就是一個(gè)網(wǎng)址嗎?
URL 是英文 Uniform Resource Locator 的縮寫(xiě),即統(tǒng)一資源定位器,是因特網(wǎng)上用于指定信息位置的表示方法,通過(guò)它就能找到網(wǎng)上的某個(gè)你要的資源
雖然我們平時(shí)使用瀏覽器的時(shí)候,只要輸入baidu.com或者qq.com就能正常上網(wǎng)了,但其實(shí)我們輸入的只是整個(gè)URL中的一小部分
來(lái),我先看看一個(gè)相對(duì)完整的URL的整體結(jié)構(gòu)是怎么樣的
這里大致分了幾個(gè)部分,我們一個(gè)個(gè)來(lái)看,它們具體是干什么的
圖中http://這部分就是協(xié)議部分,即指定了URL是以什么協(xié)議發(fā)送網(wǎng)絡(luò)請(qǐng)求的
常見(jiàn)的協(xié)議如:http://、https://、ftp://、file://,比如: http://就是超文本傳輸協(xié)議,平時(shí)上網(wǎng)大多用這個(gè)協(xié)議,https://是以安全為目標(biāo)的HTTP協(xié)議。
圖中l(wèi)ocalhost就是地址部分,用來(lái)確定URL所要訪問(wèn)的服務(wù)器的網(wǎng)絡(luò)地址(也就是網(wǎng)址)。在URL中,地址可以用三個(gè)形式來(lái)表示:域名、主機(jī)名、IP地址
我們平時(shí)輸入的www.baidu.com、www.qq.com就是域名,域名也分一級(jí)域名、二級(jí)域名、以及頂級(jí)域名。
不過(guò),域名也只是一串文字,計(jì)算機(jī)和路由器并不能直接認(rèn)出它,還需要通過(guò)DNS服務(wù)器找到域名對(duì)應(yīng)的IP地址,再通過(guò)底層的TCP/IP協(xié)議路由到對(duì)應(yīng)的機(jī)器上去 (這些內(nèi)容不是本文的重點(diǎn)暫時(shí)略過(guò),先挖個(gè)坑再說(shuō))
主機(jī)名就是某臺(tái)計(jì)算機(jī)的名字,在一個(gè)局域網(wǎng)內(nèi),可以通過(guò)主機(jī)名找到你要訪問(wèn)的計(jì)算機(jī)。主機(jī)名和域名一樣,計(jì)算機(jī)和路由器不認(rèn)它,需要通過(guò)HOSTS文件這樣的技術(shù)找到主機(jī)名和IP地址的關(guān)聯(lián)關(guān)系,最后還是翻譯成IP地址再繼續(xù)發(fā)送網(wǎng)絡(luò)請(qǐng)求
圖中的localhost也是主機(jī)名,但是一種比較特殊的主機(jī)名,是給 回環(huán)地址的一個(gè)標(biāo)準(zhǔn)主機(jī)名,就是代表本機(jī)自己的地址。
在URL中也可以直接用IP地址來(lái)代替域名或主機(jī)名,如192.168.0.1,關(guān)于IP地址的相關(guān)知識(shí)點(diǎn)放到以后再講(繼續(xù)挖坑)
圖中在冒號(hào):后面的那串?dāng)?shù)字8080就是端口號(hào),一臺(tái)服務(wù)器上可以開(kāi)多個(gè)端口號(hào),往往一個(gè)網(wǎng)絡(luò)服務(wù)程序就對(duì)應(yīng)一個(gè)端口號(hào)
比如,我在機(jī)器 A 上,開(kāi)了兩個(gè)服務(wù)程序,分別是 Tomcat和SSH,讓它們分別關(guān)聯(lián)端口8080和22,那URL中如果端口號(hào)是8080就是會(huì)訪問(wèn)到Tomcat程序,22就會(huì)連接SSH服務(wù)。
但可能有小伙伴會(huì)有疑問(wèn):誒,我平時(shí)上百度看到的URL是http://www.baidu.com沒(méi)看到有端口號(hào)啊
其實(shí)是有的,端口號(hào)是80,只是它被隱藏起來(lái)了,我們看不到而已,而這個(gè)80端口也就是URL的默認(rèn)端口號(hào)
但不是所有URL的默認(rèn)端口號(hào)都是80,如果協(xié)議是http://,默認(rèn)端口號(hào)為80,但若是https://協(xié)議,默認(rèn)端口號(hào)就是443了
從第一個(gè)斜杠/開(kāi)始,到最后一個(gè)斜杠/結(jié)束的那部分,也就是圖中/app/user/那部分即為虛擬目錄
它就類似我們電腦中文件目錄的格式,第一個(gè)/為根目錄,每多一個(gè)/就多進(jìn)入一層目錄
從域名后開(kāi)始算起的最后一個(gè)斜杠/開(kāi)始,到?為止,沒(méi)有?則到#為止,或者?和#都沒(méi)有就是到整個(gè)URL結(jié)束為止的那部分就為文件名
說(shuō)起來(lái)很繞吧,其實(shí)就是圖中 info.do 這部分,它一般包含文件名和擴(kuò)展名('.'后面那部分),用來(lái)指代一個(gè)URL所訪問(wèn)的具體文件或資源,它可以是圖片、html文件、css文件,也可以是js文件、字體文件等等,它也可以不是某種文件,而是服務(wù)端后臺(tái)執(zhí)行的某段程序。
甚至可以省略不寫(xiě)虛擬目錄和文件名,因?yàn)樗鼈儽緛?lái)就不是必須的,就如http://www.baidu.com這樣的URL就沒(méi)有文件名,但服務(wù)器會(huì)在缺省的情況下給你定位到某個(gè)特定的文件或程序上去。
從?后到#結(jié)束,即圖中的?uid=101&ty=2為查詢參數(shù)
查詢參數(shù),也稱為URL參數(shù)、查詢字符串,英文名為 Query,它是用來(lái)向服務(wù)端以字符串的形式傳遞參數(shù)和少數(shù)數(shù)據(jù)用的
其參數(shù)形式一般都以多個(gè)鍵值對(duì)的形式進(jìn)行表示,如 a=1、b=2就是兩個(gè)鍵值對(duì),鍵為"a"和"b",值為對(duì)應(yīng)的"1"和"2", 多個(gè)鍵值對(duì)應(yīng)&連起來(lái):a=1&b=2
但參數(shù)要傳遞的某些值往往帶有特殊字符,這些字符和URL標(biāo)準(zhǔn)的格式?jīng)_突,比如要傳a&b這樣字符串,和查詢參數(shù)鍵值對(duì)的連接符&沖突了,若不加以區(qū)分就會(huì)產(chǎn)生歧義
而最簡(jiǎn)單的辦法,就是對(duì)參數(shù)值進(jìn)行編碼,稱為 URL Encoding,通過(guò)編碼,a&b變成了a%26b,就不再包含會(huì)沖突的特殊字符
而有些參數(shù)即便有特殊字符,也不會(huì)被編碼,除非自行強(qiáng)制編碼,比如URL中參數(shù)值是另外一串URL,就可以寫(xiě)成 http://localhost/do?url=http://www.baidu.com
這種特殊情況不會(huì)有歧義,因?yàn)橛?jì)算機(jī)系統(tǒng)認(rèn)得出參數(shù)是另一串URL,就會(huì)按URL的形式來(lái)解析,但當(dāng)子URL又包含子參數(shù)和多子鍵值對(duì)的時(shí)候也難免會(huì)分不清參數(shù)到底是兒子的還是父親的,這時(shí)還是強(qiáng)制編碼的好
URL的參數(shù)是一個(gè)個(gè)鍵值對(duì),即一個(gè)key對(duì)應(yīng)一個(gè)value,那如果是一個(gè)key要傳遞多個(gè)值,也就是一個(gè)列表咋辦?也好辦
URL的參數(shù)名是可以重復(fù)的,比如a=1&a=2&a=3,這里穿了3個(gè)參數(shù)名都為a的查詢參數(shù),是完全可以的,可以利用這種特性,按順序?qū)?1、2、3作為參數(shù)a的列表值
為了表示更清楚點(diǎn),一般都會(huì)在列表參數(shù)名后面加上一對(duì)方括號(hào)[],如:a[]=1&a[]=2&a[]=3
但是,對(duì)于URL參數(shù)的寫(xiě)法和格式的標(biāo)準(zhǔn),也沒(méi)有特別嚴(yán)格的規(guī)定,以上幾種形式一般都會(huì)支持
圖中#后面那部分字符串,#abc就是錨部分
錨,英文稱做Reference,通常也是用來(lái)傳遞參數(shù)等信息,但與查詢參數(shù)的本質(zhì)區(qū)別就是這部分內(nèi)容不會(huì)被傳遞到服務(wù)器端
錨一般用于頁(yè)面,比如在瀏覽網(wǎng)頁(yè)的時(shí)候,按個(gè)按鈕突然幫你定位到頁(yè)首或頁(yè)面中的某個(gè)位子去了,這就是錨
現(xiàn)在隨著前后端分離技術(shù),尤其是 vue、reactjs 等前端框架的興起,錨作為前端javascript程序處理的參數(shù)載體也越來(lái)越重要了
URL看似已經(jīng)習(xí)以為常、非常簡(jiǎn)單的東西,背后往往也隱藏著很多技術(shù)細(xì)節(jié)和知識(shí)點(diǎn),甚至這短短一篇文章也沒(méi)辦法窮盡
其實(shí)URL的內(nèi)容還有不少,比如<用戶名>@<密碼>這種用戶驗(yàn)證信息在URL中的傳遞,由于篇幅的關(guān)系還沒(méi)有講到
所以我講分幾篇文章來(lái)講解HTTP協(xié)議的其中幾個(gè)重要部分,如果這一系列文章對(duì)你有幫助,別忘了關(guān)注哦~
海上安全航行中,船用變壓器扮演著至關(guān)重要的角色,它們不僅是船上電氣系統(tǒng)的核心組件,還直接關(guān)系到整個(gè)船舶的安全性和可靠性。為了確保船只在各種惡劣海洋環(huán)境下仍能持續(xù)穩(wěn)定運(yùn)行,選擇符合國(guó)際權(quán)威船級(jí)社標(biāo)準(zhǔn)的船用變壓器變得尤為關(guān)鍵。
船用變壓器必須滿足多個(gè)國(guó)際船級(jí)社的嚴(yán)格要求,如美國(guó)船級(jí)社(ABS)、中國(guó)船級(jí)社(CSS)、法國(guó)船級(jí)社(BV)以及挪威船級(jí)社(DNV)等。這些標(biāo)準(zhǔn)涵蓋了設(shè)計(jì)、制造、測(cè)試和安裝過(guò)程中的全面質(zhì)量控制,確保變壓器能在極端條件下保持良好的性能,防止因電氣故障引發(fā)的安全事故,比如火災(zāi)、短路或者電力供應(yīng)中斷。
此外,船用變壓器的設(shè)計(jì)還需考慮到船舶特殊的運(yùn)行環(huán)境,包括但不限于鹽霧腐蝕、振動(dòng)沖擊、溫度變化等因素。因此,高標(biāo)準(zhǔn)的防護(hù)等級(jí)、耐用材料的選擇、以及優(yōu)化的散熱設(shè)計(jì)都是必不可少的,以確保變壓器能夠在惡劣的海上環(huán)境中長(zhǎng)期穩(wěn)定工作,為船舶的電力系統(tǒng)提供可靠支持,保障船舶的安全航行。
綜上所述,選擇符合ABS、CSS、BV、DNV等船檢標(biāo)準(zhǔn)的船用變壓器,對(duì)于保證海上航行的安全性至關(guān)重要,它不僅能夠提升船舶電氣系統(tǒng)的整體性能,還能有效降低航行風(fēng)險(xiǎn),保障船員和貨物的安全。
英文版郵件或者某些中文版郵件中,例如Outlook,常會(huì)有Cc,Bcc,reply all,attachment等,這些分別指什么?怎么用?以下總結(jié)供參考。
1.Cc and Bcc
抄送和暗送
Cc指抄送,即讓某人知道事情的進(jìn)展,通常抄送的對(duì)象是領(lǐng)導(dǎo)。
Bcc指暗送,即收件人看不到這封郵件還發(fā)給了誰(shuí),通常用于不想讓收件人知道你還發(fā)給了誰(shuí)。
Cc means a 'carbon copy' of the email is sent to someone, who is generally boss; Bcc means that a 'blind carbon copy' is sent to people whose email addresses will not be seen by the recipient .
2. Bullet points
要點(diǎn)
即寫(xiě)郵件正文時(shí)候按照1、2、3等類似序號(hào)寫(xiě)出關(guān)鍵核心點(diǎn),盡量語(yǔ)言簡(jiǎn)潔,條理清晰,邏輯和層次明確。不要像寫(xiě)文章一樣整段。
Symbols, often small circles, that show information in a list.
3.Emoticon
表情符號(hào)
適當(dāng)利用表情符號(hào),可以準(zhǔn)確傳遞情緒價(jià)值,讓生硬的文字更能準(zhǔn)確表達(dá)自己的想法。但正式的郵件中最好不要用表情符號(hào)。
An image used in electronic communication to express an emotion .
4.Attachment
附件
指發(fā)送郵件時(shí)候隨附的PDF文檔,word文檔,Excel文檔,照片等等。
A computer file sent as part of an email .
回形針?lè)?hào)通常表示添加附件
5.Reply
回復(fù)
點(diǎn)擊“reply”后,可回復(fù)別人郵件。
To answer someone .
“回復(fù)”的符號(hào)
6.Reply all
全部回復(fù)
在回復(fù)郵件時(shí),所有在原郵件中的人都會(huì)收到回復(fù)。
When answering an email , including all the people the original email was sent to.
“全部回復(fù)”的符號(hào)
7.標(biāo)題行
Subject line
標(biāo)題行通常在郵件的“收件人”下方,用于告知?jiǎng)e人這封郵件是關(guān)于什么話題。
The section is usually under "from" and "to" in an email that tells you what the email is about .
*請(qǐng)認(rèn)真填寫(xiě)需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。