HTTP必知必會 常見面試題總結

2021-08-15 18:38:58 字數 2662 閱讀 2003

1、常用的http方法有哪些?

get:

用於請求訪問已經被uri(統一資源識別符號)識別的資源,可以通過url傳參給伺服器

post:

用於傳輸資訊給伺服器,主要功能與get方法類似,但一般推薦使用post方式。

put:

傳輸檔案,報文主體中包含檔案內容,儲存到對應uri位置。

head:

獲得報文首部,與get方法類似,只是不返回報文主體,一般用於驗證uri是否有效。

delete:

刪除檔案,與put方法相反,刪除對應uri位置的檔案。

options:

查詢相應uri支援的http方法。

2、get方法與post方法的區別

區別一:

get重點在從伺服器上獲取資源,post重點在向伺服器傳送資料;

區別二:

get傳輸資料是通過url請求,以field(字段)= value的形式,置於url後,並用"?"連線,多個請求資料間用"&"連線,如這個過程使用者是可見的;

post傳輸資料通過http的post機制,將字段與對應值封存在請求實體中傳送給伺服器,這個過程對使用者是不可見的;

區別三:

get傳輸的資料量小,因為受url長度限制,但效率較高;

post可以傳輸大量資料,所以上傳檔案時只能用post方式;

區別四:

get是不安全的,因為url是可見的,可能會洩露私密資訊,如密碼等;

post較get安全性較高;

區別五:

get方式只能支援ascii字元,向伺服器傳的中文字元可能會亂碼。

post支援標準字符集,可以正確傳遞中文字元。

3、http請求報文與響應報文格式

請求報文包含三部分:

a、請求行:包含請求方法、uri、http版本資訊

b、請求首部字段

c、請求內容實體

響應報文包含三部分:

a、狀態行:包含http版本、狀態碼、狀態碼的原因短語

b、響應首部字段

c、響應內容實體

4、常見的http相應狀態碼

200:

請求被正常處理

204:

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

206:

客戶端只是請求資源的一部分,伺服器只對請求的部分資源執行get方法,相應報文中通過content-range指定範圍的資源。

301:

永久性重定向

302:

臨時重定向

303:

與302狀態碼有相似功能,只是它希望客戶端在請求乙個uri的時候,能通過get方法重定向到另乙個uri上

304:

傳送附帶條件的請求時,條件不滿足時返回,與重定向無關

307:

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

400:

請求報文語法有誤,伺服器無法識別

401:

請求需要認證

403:

請求的對應資源禁止被訪問

404:

伺服器無法找到對應資源

500:

伺服器內部錯誤

503:

伺服器正忙

5、http1.1版本新特性

a、預設持久連線節省通訊量,只要客戶端服務端任意一端沒有明確提出斷開tcp連線,就一直保持連線,可以傳送多次http請求

b、管線化,客戶端可以同時發出多個http請求,而不用乙個個等待響應

c、斷點續傳原理

6、常見http首部字段

a、通用首部字段

(請求報文與響應報文都會使用的首部字段)

date:建立報文時間

connection:連線的管理

cache-control:快取的控制

transfer-encoding:報文主體的傳輸編碼方式

b、請求首部字段

(請求報文會使用的首部字段)

host:請求資源所在伺服器

accept:可處理的**型別

accept-charset:可接收的字符集

accept-encoding:可接受的內容編碼

accept-language:可接受的自然語言

c、響應首部字段(

響應報文會使用的首部字段)

accept-ranges:可接受的位元組範圍

location:令客戶端重新定向到的uri

server:http伺服器的安裝資訊

d、實體首部字段

(請求報文與響應報文的的實體部分使用的首部字段)

allow:資源可支援的http方法

content-type:實體主類的型別

content-encoding:實體主體適用的編碼方式

content-language:實體主體的自然語言

content-length:實體主體的的位元組數

content-range:實體主體的位置範圍,一般用於發出部分請求時使用

7、http的缺點與https

a、通訊使用明文不加密,內容可能被竊聽

b、不驗證通訊方身份,可能遭到偽裝

c、無法驗證報文完整性,可能被篡改

https就是http加上加密處理(一般是ssl安全通訊線路)+認證+完整性保護

8、http優化

利用負載均衡優化和加速http應用

利用http cache來優化**

HTTP必知必會 常見面試題總結

1 常用的http方法有哪些?get 用於請求訪問已經被uri 統一資源識別符號 識別的資源,可以通過url傳參給伺服器 post 用於傳輸資訊給伺服器,主要功能與get方法類似,但一般推薦使用post方式。put 傳輸檔案,報文主體中包含檔案內容,儲存到對應uri位置。head 獲得報文首部,與g...

http常見面試題總結

在上篇文章 https 為什麼是安全的 上 中,我們藉由如何安全的傳輸資訊這個問題,引出了 https 中常用的密碼學工具,對稱加密,非對稱加密,雜湊,訊息認證碼,數字簽名,證書等等。這裡先簡單複習一下。通訊內容一般直接使用對稱加密,但對稱加密存在金鑰傳輸問題。非對稱加密效能只有對稱加密的幾百分之一...

IT 常見面試題總結2

001 輸入一行字元,統計其中有多少個單詞,單詞之間用空格分隔開 include includeint main else if word 0 printf d num 使得dos介面不閃屏 int in scanf d in return 0 002 函式指標的應用 輸入兩個整數,當使用者輸入1,...