国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

HTTP面試題都在這里

番茄西紅柿 / 426人閱讀

摘要:一般由三部組成協(xié)議或稱為服務(wù)方式存有該資源的主機(jī)地址有時(shí)也包括端口號(hào)主機(jī)資源的具體地址。上面的和都是的示例。服務(wù)器應(yīng)答客戶機(jī)向服務(wù)器發(fā)出請(qǐng)求后,服務(wù)器會(huì)客戶機(jī)回送應(yīng)答,,應(yīng)答的第一部分是協(xié)議的版本號(hào)和應(yīng)答狀態(tài)碼。

HTTP常見面試題 Http與Https的區(qū)別:
Http與Https的區(qū)別:

HTTP 的URL 以http:// 開頭,而HTTPS 的URL 以https:// 開頭

HTTP 是不安全的,而 HTTPS 是安全的

HTTP 標(biāo)準(zhǔn)端口是80 ,而 HTTPS 的標(biāo)準(zhǔn)端口是443

在OSI 網(wǎng)絡(luò)模型中,HTTP工作于應(yīng)用層,而HTTPS 的安全傳輸機(jī)制工作在傳輸層

HTTP 無法加密,而HTTPS 對(duì)傳輸?shù)臄?shù)據(jù)進(jìn)行加密

HTTP無需證書,而HTTPS 需要CA機(jī)構(gòu)頒發(fā)的SSL證書

什么是Http協(xié)議無狀態(tài)協(xié)議?怎么解決Http協(xié)議無狀態(tài)協(xié)議?

無狀態(tài)協(xié)議對(duì)于事務(wù)處理沒有記憶能力缺少狀態(tài)意味著如果后續(xù)處理需要前面的信息

也就是說,當(dāng)客戶端一次HTTP請(qǐng)求完成以后,客戶端再發(fā)送一次HTTP請(qǐng)求,HTTP并不知道當(dāng)前客戶端是一個(gè)”老用戶“。

可以使用Cookie來解決無狀態(tài)的問題,Cookie就相當(dāng)于一個(gè)通行證,第一次訪問的時(shí)候給客戶端發(fā)送一個(gè)Cookie,當(dāng)客戶端再次來的時(shí)候,拿著Cookie(通行證),那么服務(wù)器就知道這個(gè)是”老用戶“。

URI和URL的區(qū)別
URI和URL的區(qū)別

URI,是uniform resource identifier,統(tǒng)一資源標(biāo)識(shí)符,用來唯一的標(biāo)識(shí)一個(gè)資源。

Web上可用的每種資源如HTML文檔、圖像、視頻片段、程序等都是一個(gè)來URI來定位的

URI一般由三部組成:

①訪問資源的命名機(jī)制

②存放資源的主機(jī)名

③資源自身的名稱,由路徑表示,著重強(qiáng)調(diào)于資源。

URL是uniform resource locator,統(tǒng)一資源定位器,它是一種具體的URI,即URL可以用來標(biāo)識(shí)一個(gè)資源,而且還指明了如何locate這個(gè)資源。

URL是Internet上用來描述信息資源的字符串,主要用在各種WWW客戶程序和服務(wù)器程序上,特別是著名的Mosaic。

采用URL可以用一種統(tǒng)一的格式來描述各種信息資源,包括文件、服務(wù)器的地址和目錄等。URL一般由三部組成:

①協(xié)議(或稱為服務(wù)方式)

②存有該資源的主機(jī)IP地址(有時(shí)也包括端口號(hào))

③主機(jī)資源的具體地址。如目錄和文件名等

URN,uniform resource name,統(tǒng)一資源命名,是通過名字來標(biāo)識(shí)資源,比如mailto:java-net@java.sun.com。

URI是以一種抽象的,高層次概念定義統(tǒng)一資源標(biāo)識(shí),而URL和URN則是具體的資源標(biāo)識(shí)的方式。URL和URN都是一種URI。籠統(tǒng)地說,每個(gè) URL 都是 URI,但不一定每個(gè) URI 都是 URL。這是因?yàn)?URI 還包括一個(gè)子類,即統(tǒng)一資源名稱 (URN),它命名資源但不指定如何定位資源。上面的 mailto、news 和 isbn URI 都是 URN 的示例。

在Java的URI中,一個(gè)URI實(shí)例可以代表絕對(duì)的,也可以是相對(duì)的,只要它符合URI的語法規(guī)則。而URL類則不僅符合語義,還包含了定位該資源的信息,因此它不能是相對(duì)的。

在Java類庫中,URI類不包含任何訪問資源的方法,它唯一的作用就是解析。

相反的是,URL類可以打開一個(gè)到達(dá)資源的流。

常用的HTTP方法有哪些?
常用的HTTP方法有哪些?

GET: 用于請(qǐng)求訪問已經(jīng)被URI(統(tǒng)一資源標(biāo)識(shí)符)識(shí)別的資源,可以通過URL傳參給服務(wù)器

POST:用于傳輸信息給服務(wù)器,主要功能與GET方法類似,但一般推薦使用POST方式。

PUT: 傳輸文件,報(bào)文主體中包含文件內(nèi)容,保存到對(duì)應(yīng)URI位置。

HEAD: 獲得報(bào)文首部,與GET方法類似,只是不返回報(bào)文主體,一般用于驗(yàn)證URI是否有效。

DELETE:刪除文件,與PUT方法相反,刪除對(duì)應(yīng)URI位置的文件。

OPTIONS:查詢相應(yīng)URI支持的HTTP方法。

HTTP請(qǐng)求報(bào)文與響應(yīng)報(bào)文格式
HTTP請(qǐng)求報(bào)文與響應(yīng)報(bào)文格式

請(qǐng)求報(bào)文包含四部分:

a、請(qǐng)求行:包含請(qǐng)求方法、URI、HTTP版本信息

b、請(qǐng)求首部字段

c、請(qǐng)求內(nèi)容實(shí)體

d、空行

響應(yīng)報(bào)文包含四部分:

a、狀態(tài)行:包含HTTP版本、狀態(tài)碼、狀態(tài)碼的原因短語

b、響應(yīng)首部字段

c、響應(yīng)內(nèi)容實(shí)體

d、空行

常見的首部:

通用首部字段(請(qǐng)求報(bào)文與響應(yīng)報(bào)文都會(huì)使用的首部字段)

Date:創(chuàng)建報(bào)文時(shí)間

Connection:連接的管理

Cache-Control:緩存的控制

Transfer-Encoding:報(bào)文主體的傳輸編碼方式

請(qǐng)求首部字段(請(qǐng)求報(bào)文會(huì)使用的首部字段)

Host:請(qǐng)求資源所在服務(wù)器

Accept:可處理的媒體類型

Accept-Charset:可接收的字符集

Accept-Encoding:可接受的內(nèi)容編碼

Accept-Language:可接受的自然語言

響應(yīng)首部字段(響應(yīng)報(bào)文會(huì)使用的首部字段)

Accept-Ranges:可接受的字節(jié)范圍

Location:令客戶端重新定向到的URI

Server:HTTP服務(wù)器的安裝信息

實(shí)體首部字段(請(qǐng)求報(bào)文與響應(yīng)報(bào)文的的實(shí)體部分使用的首部字段)

Allow:資源可支持的HTTP方法

Content-Type:實(shí)體主類的類型

Content-Encoding:實(shí)體主體適用的編碼方式

Content-Language:實(shí)體主體的自然語言

Content-Length:實(shí)體主體的的字節(jié)數(shù)

Content-Range:實(shí)體主體的位置范圍,一般用于發(fā)出部分請(qǐng)求時(shí)使用

HTTPS工作原理
HTTPS工作原理

一、首先HTTP請(qǐng)求服務(wù)端生成證書,客戶端對(duì)證書的有效期、合法性、域名是否與請(qǐng)求的域名一致、證書的公鑰(RSA加密)等進(jìn)行校驗(yàn);

二、客戶端如果校驗(yàn)通過后,就根據(jù)證書的公鑰的有效, 生成隨機(jī)數(shù),隨機(jī)數(shù)使用公鑰進(jìn)行加密(RSA加密);

三、消息體產(chǎn)生的后,對(duì)它的摘要進(jìn)行MD5(或者SHA1)算法加密,此時(shí)就得到了RSA簽名;

四、發(fā)送給服務(wù)端,此時(shí)只有服務(wù)端(RSA私鑰)能解密。

五、解密得到的隨機(jī)數(shù),再用AES加密,作為密鑰(此時(shí)的密鑰只有客戶端和服務(wù)端知道)。

具體的參考鏈接:http://blog.csdn.net/sean_cd/article/details/6966130

一次完整的HTTP請(qǐng)求所經(jīng)歷的7個(gè)步驟
一次完整的HTTP請(qǐng)求所經(jīng)歷的7個(gè)步驟

HTTP通信機(jī)制是在一次完整的HTTP通信過程中,Web瀏覽器與Web服務(wù)器之間將完成下列7個(gè)步驟:

建立TCP連接

在HTTP工作開始之前,Web瀏覽器首先要通過網(wǎng)絡(luò)與Web服務(wù)器建立連接,該連接是通過TCP來完成的,該協(xié)議與IP協(xié)議共同構(gòu)建 Internet,即著名的TCP/IP協(xié)議族,因此Internet又被稱作是TCP/IP網(wǎng)絡(luò)。HTTP是比TCP更高層次的應(yīng)用層協(xié)議,根據(jù)規(guī)則, 只有低層協(xié)議建立之后才能,才能進(jìn)行更層協(xié)議的連接,因此,首先要建立TCP連接,一般TCP連接的端口號(hào)是80。

Web瀏覽器向Web服務(wù)器發(fā)送請(qǐng)求行

一旦建立了TCP連接,Web瀏覽器就會(huì)向Web服務(wù)器發(fā)送請(qǐng)求命令。例如:GET /sample/hello.jsp HTTP/1.1。

Web瀏覽器發(fā)送請(qǐng)求頭

瀏覽器發(fā)送其請(qǐng)求命令之后,還要以頭信息的形式向Web服務(wù)器發(fā)送一些別的信息,之后瀏覽器發(fā)送了一空白行來通知服務(wù)器,它已經(jīng)結(jié)束了該頭信息的發(fā)送。

Web服務(wù)器應(yīng)答

客戶機(jī)向服務(wù)器發(fā)出請(qǐng)求后,服務(wù)器會(huì)客戶機(jī)回送應(yīng)答, HTTP/1.1 200 OK ,應(yīng)答的第一部分是協(xié)議的版本號(hào)和應(yīng)答狀態(tài)碼。

Web服務(wù)器發(fā)送應(yīng)答頭

正如客戶端會(huì)隨同請(qǐng)求發(fā)送關(guān)于自身的信息一樣,服務(wù)器也會(huì)隨同應(yīng)答向用戶發(fā)送關(guān)于它自己的數(shù)據(jù)及被請(qǐng)求的文檔。

Web服務(wù)器向?yàn)g覽器發(fā)送數(shù)據(jù)

Web服務(wù)器向?yàn)g覽器發(fā)送頭信息后,它會(huì)發(fā)送一個(gè)空白行來表示頭信息的發(fā)送到此為結(jié)束,接著,它就以Content-Type應(yīng)答頭信息所描述的格式發(fā)送用戶所請(qǐng)求的實(shí)際數(shù)據(jù)

Web服務(wù)器關(guān)閉TCP連接

一般情況下,一旦Web服務(wù)器向?yàn)g覽器發(fā)送了請(qǐng)求數(shù)據(jù),它就要關(guān)閉TCP連接,然后如果瀏覽器或者服務(wù)器在其頭信息加入了這行代碼:

Connection:keep-alive

TCP連接在發(fā)送后將仍然保持打開狀態(tài),于是,瀏覽器可以繼續(xù)通過相同的連接發(fā)送請(qǐng)求。保持連接節(jié)省了為每個(gè)請(qǐng)求建立新連接所需的時(shí)間,還節(jié)約了網(wǎng)絡(luò)帶寬。

建立TCP連接->發(fā)送請(qǐng)求行->發(fā)送請(qǐng)求頭->(到達(dá)服務(wù)器)發(fā)送狀態(tài)行->發(fā)送響應(yīng)頭->發(fā)送響應(yīng)數(shù)據(jù)->斷TCP連接

最具體的HTTP請(qǐng)求過程:http://blog.51cto.com/linux5588/1351007

常見的HTTP相應(yīng)狀態(tài)碼
常見的HTTP相應(yīng)狀態(tài)碼

200:請(qǐng)求被正常處理

204:請(qǐng)求被受理但沒有資源可以返回

206:客戶端只是請(qǐng)求資源的一部分,服務(wù)器只對(duì)請(qǐng)求的部分資源執(zhí)行GET方法,相應(yīng)報(bào)文中通過Content-Range指定范圍的資源。

301:永久性重定向

302:臨時(shí)重定向

303:與302狀態(tài)碼有相似功能,只是它希望客戶端在請(qǐng)求一個(gè)URI的時(shí)候,能通過GET方法重定向到另一個(gè)URI上

304:發(fā)送附帶條件的請(qǐng)求時(shí),條件不滿足時(shí)返回,與重定向無關(guān)

307:臨時(shí)重定向,與302類似,只是強(qiáng)制要求使用POST方法

400:請(qǐng)求報(bào)文語法有誤,服務(wù)器無法識(shí)別

401:請(qǐng)求需要認(rèn)證

403:請(qǐng)求的對(duì)應(yīng)資源禁止被訪問

404:服務(wù)器無法找到對(duì)應(yīng)資源

500:服務(wù)器內(nèi)部錯(cuò)誤

503:服務(wù)器正忙

HTTP1.1版本新特性
HTTP1.1版本新特性

a、默認(rèn)持久連接節(jié)省通信量,只要客戶端服務(wù)端任意一端沒有明確提出斷開TCP連接,就一直保持連接,可以發(fā)送多次HTTP請(qǐng)求

b、管線化,客戶端可以同時(shí)發(fā)出多個(gè)HTTP請(qǐng)求,而不用一個(gè)個(gè)等待響應(yīng)

c、斷點(diǎn)續(xù)傳

實(shí)際上就是利用HTTP消息頭使用分塊傳輸編碼,將實(shí)體主體分塊傳輸。

HTTP優(yōu)化方案

我下面就簡(jiǎn)要概括一下:

TCP復(fù)用:TCP連接復(fù)用是將多個(gè)客戶端的HTTP請(qǐng)求復(fù)用到一個(gè)服務(wù)器端TCP連接上,而HTTP復(fù)用則是一個(gè)客戶端的多個(gè)HTTP請(qǐng)求通過一個(gè)TCP連接進(jìn)行處理。前者是負(fù)載均衡設(shè)備的獨(dú)特功能;而后者是HTTP 1.1協(xié)議所支持的新功能

內(nèi)容緩存:將經(jīng)常用到的內(nèi)容進(jìn)行緩存起來,那么客戶端就可以直接在內(nèi)存中獲取相應(yīng)的數(shù)據(jù)了。

壓縮:將文本數(shù)據(jù)進(jìn)行壓縮,減少帶寬

SSL加速(SSL Acceleration):使用SSL協(xié)議對(duì)HTTP協(xié)議進(jìn)行加密,在通道內(nèi)加密并加速

TCP緩沖:通過采用TCP緩沖技術(shù),可以提高服務(wù)器端響應(yīng)時(shí)間和處理效率,減少由于通信鏈路問題給服務(wù)器造成的連接負(fù)擔(dān)。

詳情參考:

http://blog.51cto.com/virtualadc/580832

http://www.cnblogs.com/cocowool/archive/2011/08/22/2149929.html

如果文章有錯(cuò)的地方歡迎指正,大家互相交流。習(xí)慣在微信看技術(shù)文章的同學(xué),可以關(guān)注微信公眾號(hào):Java3y

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/70981.html

相關(guān)文章

  • Tomcat+Servlet面試都在這里

    摘要:當(dāng)被實(shí)例化后,會(huì)調(diào)用方法初始化這個(gè)對(duì)象處理服務(wù)。方式可以在請(qǐng)求的實(shí)體內(nèi)容中向服務(wù)器發(fā)送數(shù)據(jù),傳送的數(shù)據(jù)量無限制。不存在敏感信息泄露問題。并且依賴于名為的,該默認(rèn)的屬性為。 下面是我整理下來的Servlet知識(shí)點(diǎn): showImg(https://segmentfault.com/img/bV3c9e);? 圖上的知識(shí)點(diǎn)都可以在我其他的文章內(nèi)找到相應(yīng)內(nèi)容。 Tomcat常見面試題 Tom...

    Tychio 評(píng)論0 收藏0
  • Tomcat+Servlet面試都在這里

    摘要:當(dāng)被實(shí)例化后,會(huì)調(diào)用方法初始化這個(gè)對(duì)象處理服務(wù)。方式可以在請(qǐng)求的實(shí)體內(nèi)容中向服務(wù)器發(fā)送數(shù)據(jù),傳送的數(shù)據(jù)量無限制。不存在敏感信息泄露問題。并且依賴于名為的,該默認(rèn)的屬性為。 下面是我整理下來的Servlet知識(shí)點(diǎn): showImg(https://segmentfault.com/img/bV3c9e);? 圖上的知識(shí)點(diǎn)都可以在我其他的文章內(nèi)找到相應(yīng)內(nèi)容。 Tomcat常見面試題 Tom...

    KaltZK 評(píng)論0 收藏0
  • XML+JSON面試都在這里

    摘要:是什么是什么也是常用的技術(shù),用于將一個(gè)文件轉(zhuǎn)換為另一種,或者其他的格式。也可以很方便地把一種文件轉(zhuǎn)換為另一種文檔如果文章有錯(cuò)的地方歡迎指正,大家互相交流。 XML+JSON常見面試題 什么是JSON和XML 什么是JSON和XML JSON:JavaScript Object Notation 【JavaScript 對(duì)象表示法】. XML:extensiable markup lan...

    moven_j 評(píng)論0 收藏0
  • XML+JSON面試都在這里

    摘要:是什么是什么也是常用的技術(shù),用于將一個(gè)文件轉(zhuǎn)換為另一種,或者其他的格式。也可以很方便地把一種文件轉(zhuǎn)換為另一種文檔如果文章有錯(cuò)的地方歡迎指正,大家互相交流。 XML+JSON常見面試題 什么是JSON和XML 什么是JSON和XML JSON:JavaScript Object Notation 【JavaScript 對(duì)象表示法】. XML:extensiable markup lan...

    isaced 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<