溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java?Http的基礎(chǔ)概念是什么

發(fā)布時(shí)間:2023-04-26 11:53:25 來源:億速云 閱讀:118 作者:iii 欄目:開發(fā)技術(shù)

本篇內(nèi)容介紹了“Java Http的基礎(chǔ)概念是什么”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

基本概念了解

網(wǎng)絡(luò)的分層

注:關(guān)于概念的東西,這里不會(huì)介紹太多,畢竟還是書本上的知識(shí)更加全面一些,這里主要就是介紹一些概念。

計(jì)算機(jī)網(wǎng)絡(luò)被劃分為具有層次的結(jié)構(gòu),按照目前使用的TCP/IP 4層協(xié)議。TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協(xié)議/網(wǎng)際協(xié)議)是指能夠在多個(gè)不同網(wǎng)絡(luò)間實(shí)現(xiàn)信息傳輸?shù)膮f(xié)議簇。 我們學(xué)習(xí)的時(shí)候,是劃分成了五層協(xié)議來學(xué)習(xí)的,從底層到高層分別是:物理層->數(shù)據(jù)鏈路層->網(wǎng)絡(luò)層->傳輸層->應(yīng)用層。

這里只要知道:HTTP協(xié)議是建立在TCP協(xié)議之上的(或者應(yīng)用層是建立在傳輸層之上的)。

感興趣的可以去了解一下 TCP/IP 和 OSI 的關(guān)系,并且為何是TCP/IP成為了主流?

Java?Http的基礎(chǔ)概念是什么

HTTP協(xié)議

HTTP(HyperText Transfer Protocol),中文是超文本傳輸協(xié)議。它是用于從萬維網(wǎng)(WWW:World Wide Web )服務(wù)器傳輸超文本到本地計(jì)算機(jī)的傳送協(xié)議。HTTP基于TCP/IP通信協(xié)議來傳遞數(shù)據(jù)。 HTTP基于客戶端/服務(wù)端(C/S)架構(gòu)模型,是一個(gè)無狀態(tài)的請求/響應(yīng)協(xié)議。 我們每天都會(huì)使用它,無論是瀏覽網(wǎng)頁、看視頻(基于Http協(xié)議的視頻流)或者是下載文件(這里指使用Http協(xié)議下載),都是Http協(xié)議在起作用,可見它的無處不在。

但是,作為一個(gè)計(jì)算機(jī)專業(yè)的學(xué)生,光知道這些還是不夠的,我們需要了解具體的協(xié)議。上面說了,HTTP是一個(gè)請求、響應(yīng)協(xié)議,這里就是說,用戶發(fā)送一個(gè)請求,會(huì)得到一個(gè)響應(yīng)。請求和響應(yīng)都會(huì)對應(yīng)一個(gè)協(xié)議報(bào)文,分別稱之為請求報(bào)文和響應(yīng)報(bào)文,通常我們說HTTP報(bào)文就是指這二者。

HTTP報(bào)文分為報(bào)文頭和報(bào)文體。 報(bào)文頭部是一些必要的控制信息和對報(bào)文體數(shù)據(jù)的說明信息。通過這些信息,瀏覽器(通常是瀏覽器)就可以處理各種信息了,無論是文字、視頻還是圖片都是通過報(bào)文在網(wǎng)絡(luò)上面進(jìn)行傳輸。

請求報(bào)文和響應(yīng)報(bào)文

Java?Http的基礎(chǔ)概念是什么

這里主要是需要知道報(bào)文的結(jié)構(gòu)特點(diǎn),因?yàn)楹竺嫘枰馕龊唵蔚腍TTP報(bào)文(更詳細(xì)的報(bào)文知識(shí),可以閱讀書籍或者參考其他人的博客。或者你也可以直接閱讀后面的博客,遇到問題再去看,這樣效果會(huì)更好?。?報(bào)文頭部每一行需要一個(gè)回車換行符:CRLF CR: \r LF: \n 報(bào)文頭和報(bào)文體之間使用一個(gè)單獨(dú)的CRLF分開。 注意:GET請求沒有報(bào)文體。

//請求報(bào)文
GET /test/hi-there.txt HTTP/1.1\r\n
Accept: text/plain\r\n
Host: www.joes-hardwar.com\r\n
//請求報(bào)文
HTTP/1.0 200 OK\r\n
Content-Type: text/plain\r\n
Content-Length: 19\r\n
\r\n
Hi! I'm a message!

HTTP和TCP的關(guān)系

HTTP協(xié)議是建立在TCP協(xié)議之上的,上面我們所看到的請求和響應(yīng)報(bào)文,對于TCP來說就是一串網(wǎng)絡(luò)字節(jié)流。 我們后面的代碼會(huì)加深你對于這句話的理解了。這里使用Java語言來進(jìn)行編程,在Java中使用TCP編程,主要就是使用Java提供的Socket 套接字,也就是 Socket 和 ServerSocket 兩個(gè)類。

“Java Http的基礎(chǔ)概念是什么”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI