最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

demo鎖屏面試題-http必問

2021-07-18 20:39 作者:zjlala96  | 我要投稿

====什么是http協(xié)議?

http(Hyper Text Transfer Protocol)協(xié)議是對客戶端和服務(wù)器端之間數(shù)據(jù)之間實現(xiàn)可靠性的傳輸文字、圖片、音頻、視頻等超文本數(shù)據(jù)的規(guī)范,格式簡稱為“超文本傳輸協(xié)議”

http協(xié)議屬于應(yīng)用層。

?

====http請求的請求報文和響應(yīng)報文的格式?(重點)

1)http請求報文:一個HTTP請求報文由請求行(request line)、請求頭部(header)、空行和請求數(shù)據(jù)4個部分組成

①請求行:請求行由請求方法字段、URL字段和HTTP協(xié)議版本字段3個字段組成,它們用空格分隔。例如,GET /index.html HTTP/1.1。

②請求頭部:請求頭部由關(guān)鍵字/值對組成,每行一對,關(guān)鍵字和值用英文冒號“:”分隔。請求頭部通知服務(wù)器有關(guān)于客戶端請求的信息,典型的請求頭有:

?

User-Agent:產(chǎn)生請求的瀏覽器類型。

?

Accept:客戶端可識別的內(nèi)容類型列表。

?

Host:請求的主機(jī)名,允許多個域名同處一個IP地址,即虛擬主機(jī)

③空行:最后一個請求頭之后是一個空行,發(fā)送回車符和換行符,通知服務(wù)器以下不再有請求頭。

④請求數(shù)據(jù):請求數(shù)據(jù)不在GET方法中使用,而是在POST方法中使用。POST方法適用于需要客戶填寫表單的場合。與請求數(shù)據(jù)相關(guān)的最常使用的請求頭是Content-Type和Content-Length

?

2)?http響應(yīng)報文:HTTP響應(yīng)由三個部分組成,分別是:狀態(tài)行、消息報頭、響應(yīng)正文。

①狀態(tài)行:由協(xié)議類型及版本號、狀態(tài)碼、狀態(tài)碼的文字描述組成它們之間用空格分隔,如:HTTP/1.1 200 OK

②消息報頭:與請求頭部格式一致

③響應(yīng)正文:響應(yīng)返回的主要信息內(nèi)容

?

====http和https的區(qū)別?

其實HTTPS就是從HTTP加上加密處理(一般是SSL安全通信線路)+認(rèn)證+完整性保護(hù)

區(qū)別:

1. https需要拿到ca證書

2. 端口不一樣,http是80,https443

3. http是超文本傳輸協(xié)議,信息是明文傳輸,https則是具有安全性的ssl加密傳輸協(xié)議。

4. http和https使用的是完全不同的連接方式(http的連接很簡單,是無狀態(tài)的;HTTPS 協(xié)議是由SSL+HTTP協(xié)議構(gòu)建的可進(jìn)行加密傳輸、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議,比http協(xié)議安全。)

?

====HTTPS工作原理?

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

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

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

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

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

?

====一次完整的HTTP請求所經(jīng)歷幾個步驟?

1. 建立TCP連接

怎么建立連接的,看上面的三次捂手

2. Web瀏覽器向Web服務(wù)器發(fā)送請求行

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

3. Web瀏覽器發(fā)送請求頭

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

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

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

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

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

6. Web服務(wù)器向瀏覽器發(fā)送數(shù)據(jù)

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

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

?

====常用HTTP狀態(tài)碼是怎么分類的,有哪些常見的狀態(tài)碼?(重點)

類別:

1xx: 指示信息–表示請求已接收,正在處理

2xx: 成功–表示請求已被成功接收、理解、接受

3xx: 重定向–要完成請求必須進(jìn)行更進(jìn)一步的操作

4xx: 客戶端錯誤–請求有語法錯誤或請求無法實現(xiàn)

5xx: 服務(wù)器端錯誤–服務(wù)器未能實現(xiàn)合法的請求

常見狀態(tài)碼:

200: 請求被正常處理

204: 請求被受理但沒有資源可以返回

206:?客戶端只是請求資源的一部分,服務(wù)器只對請求的部分資源執(zhí)行GET方法,相應(yīng)

報文中通過Content-Range指定范圍的資源。

301: 永久性重定向

302: 臨時重定向

303: 與302狀態(tài)碼有相似功能,只是它希望客戶端在請求一個URI的時候,能通過GET

方法重定向到另一個URI上

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

307: 臨時重定向,與302類似,只是強制要求使用POST方法

400: 請求報文語法有誤,服務(wù)器無法識別

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

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

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

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

503: 服務(wù)器正忙

?

====Http協(xié)議中有那些請求方式?

GET:用于請求訪問已經(jīng)被URI(統(tǒng)一資源標(biāo)識符)識別的資源,可以通過URL傳

參給服務(wù)器

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

方式。

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

HEAD:獲得報文首部,與GET方法類似,只是不返回報文主體,一般用于驗證URI

是否有效。

PATCH: 客戶端向服務(wù)器傳送的數(shù)據(jù)取代指定的文檔的內(nèi)容(部分取代)

TRACE: 回顯客戶端請求服務(wù)器的原始請求報文,用于"回環(huán)"診斷

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

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

?

====GET方法與POST方法的區(qū)別?

區(qū)別一: get重點在從服務(wù)器上獲取資源,post重點在向服務(wù)器發(fā)送數(shù)據(jù);

區(qū)別二: Get傳輸?shù)臄?shù)據(jù)量小,因為受URL長度限制,但效率較高; Post可以傳輸大量數(shù)據(jù),所以上傳文件時只能用Post方式;

區(qū)別三: get是不安全的,因為get請求發(fā)送數(shù)據(jù)是在URL上,是可見的,可能會泄露私密信息,如密碼等; post是放在請求數(shù)據(jù)中的,是安全的

?

====http版本的對比?

HTTP1.0版本的特性:

?

==早先1.0的HTTP版本,是一種無狀態(tài)、無連接的應(yīng)用層協(xié)議。

==HTTP1.0規(guī)定瀏覽器和服務(wù)器保持短暫的連接,瀏覽器的每次請求都需要與服務(wù)器建立一個TCP連接,服務(wù)器處理完成后立即斷開TCP連接(無連接),服務(wù)器不跟蹤每個客戶端也不記錄過去的請求(無狀態(tài))。

?

HTTP1.1版本新特性

?

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

==管線化,客戶端可以同時發(fā)出多個HTTP請求,而不用一個個等待響應(yīng)

==斷點續(xù)傳原理

?

HTTP2.0版本的特性

?

==二進(jìn)制分幀(采用二進(jìn)制格式的編碼將其封裝)

==首部壓縮(設(shè)置了專門的首部壓縮設(shè)計的HPACK算法。)

==流量控制(設(shè)置了接收某個數(shù)據(jù)流的多少字節(jié)一些流量控制)

==多路復(fù)用(可以在共享TCP鏈接的基礎(chǔ)上同時發(fā)送請求和響應(yīng))

==請求優(yōu)先級(可以通過優(yōu)化這些幀的交錯和傳輸順序進(jìn)一步優(yōu)化性能)

==服務(wù)器推送(就是服務(wù)器可以對一個客戶端請求發(fā)送多個響應(yīng)。服務(wù)器向客戶端推送資源無需客戶端明確的請求。(重大更新))

?

====什么是cookie和session?

cookie是由Web服務(wù)器保存在用戶瀏覽器上的文件(key-value格式),可以包含用戶相關(guān)的信息??蛻舳讼蚍?wù)器發(fā)起請求,就提取瀏覽器中的用戶信息由http發(fā)送給服務(wù)器。

session 是瀏覽器和服務(wù)器會話過程中,服務(wù)器會分配的一塊儲存空間給session。

服務(wù)器默認(rèn)為客戶瀏覽器的cookie中設(shè)置 sessionid,這個sessionid就和cookie對應(yīng),瀏覽器在向服務(wù)器請求過程中傳輸?shù)腸ookie 包含 sessionid ,服務(wù)器根據(jù)傳輸cookie 中的 sessionid 獲取出會話中存儲的信息,然后確定會話的身份信息。

?

====cookie與session區(qū)別?

1. cookie數(shù)據(jù)存放在客戶端上,安全性較差,session數(shù)據(jù)放在服務(wù)器上,安全性相對更高

2. 單個cookie保存的數(shù)據(jù)不能超過4K,session無此限制 信息后,使用自己的私鑰進(jìn)行解密。 由于非對稱加密的方式不需要發(fā)送用來解密的私鑰,所以可以保證安全性;但是和對稱加密比起來,非常的慢

更多面試題或?qū)W習(xí)資源可查看我主頁或評論獲取

demo鎖屏面試題-http必問的評論 (共 條)

分享到微博請遵守國家法律
丰原市| 吉安县| 宜阳县| 西乡县| 中阳县| 色达县| 六安市| 离岛区| 嘉荫县| 长宁县| 巧家县| 镇巴县| 常宁市| 涪陵区| 五大连池市| 怀远县| 夹江县| 彭州市| 平江县| 德兴市| 万宁市| 恩施市| 安庆市| 通山县| 金山区| 石门县| 长丰县| 商丘市| 秦皇岛市| 澄城县| 紫金县| 溧阳市| 天台县| 枞阳县| 富民县| 定南县| 金溪县| 汾阳市| 长岭县| 汕头市| 大名县|