Android面試大全(四大組件篇)
Android面試大全(性能優(yōu)化篇)
Android面試大全(異常處理篇)
Android面試大全(開源框架篇)
Android面試大全(網(wǎng)絡(luò)篇)
Android面試大全(java篇)
網(wǎng)絡(luò)協(xié)議-HTTP
這部分內(nèi)容是比較基礎(chǔ)性的知識(shí)(但也是不太容易理解透的)肝箱,很多人通常不太關(guān)心焚刚,但對(duì)于開發(fā)人員來說也是不可忽視學(xué)習(xí)的一部分內(nèi)容竣灌,建議花時(shí)間多學(xué)習(xí)下,這里僅介紹一些面試常常用到的
關(guān)于面試
HTTP(Hypertext transfer protocol)超文本傳輸協(xié)議临谱,是一個(gè)應(yīng)用層的通信協(xié)議
http協(xié)議有幾種版本,它們有什么區(qū)別
HTTP/0.9 :只接受GET一種請(qǐng)求方法刨疼,沒有在通信中指定版本號(hào)专缠,且不支持請(qǐng)求頭狰挡。由于該版本不支持POST方法捂龄,因此客戶端無法向服務(wù)器傳遞太多信息,已過時(shí)加叁。
HTTP/1.0 :第一個(gè)在通信中指定的版本號(hào)倦沧,至今被廣泛采用,特別是在代理服務(wù)器中它匕。
HTTP/1.1 :當(dāng)前版本號(hào)刀脏,持久連接被默認(rèn)采用,并能很好地配合代理服務(wù)器工作超凳。還支持以管道方式在同時(shí)發(fā)送多個(gè)請(qǐng)求愈污,以便降低線路負(fù)載,提高傳輸速度轮傍。
HTTP/2.0:一個(gè)HTTP/2.0連接通過一個(gè)TCP連接(上面運(yùn)行的應(yīng)用程序級(jí)協(xié)議[TCP] )暂雹。 客戶端是TCP連接發(fā)起者。
get與post方法在項(xiàng)目中如何選擇创夜,有何區(qū)別
GET一般用于獲取/查詢資源信息杭跪,而POST一般用于更新資源信息
- 1.根據(jù)HTTP規(guī)范,GET用于信息獲取驰吓,而且應(yīng)該是安全的和冪等的涧尿。
(1).所謂安全的意味著該操作用于獲取信息而非修改信息。換句話說檬贰,GET 請(qǐng)求一般不應(yīng)產(chǎn)生副作用姑廉。就是說,它僅僅是獲取資源信息翁涤,就像數(shù)據(jù)庫查詢一樣桥言,不會(huì)修改,增加數(shù)據(jù)葵礼,不會(huì)影響資源的狀態(tài)号阿。
注意:這里安全的含義僅僅是指是非修改信息。
(2).冪等的意味著對(duì)同一URL的多個(gè)請(qǐng)求應(yīng)該返回同樣的結(jié)果鸳粉。 - 2.根據(jù)HTTP規(guī)范扔涧,POST表示可能修改變服務(wù)器上的資源的請(qǐng)求。
- 3 get提交數(shù)據(jù)會(huì)有大小的限制(1024k)届谈,post提交無限制
關(guān)于post與get區(qū)別詳細(xì)可看
tcp/udp的區(qū)別
(TCP)傳輸控制協(xié)議枯夜,是一種提供可靠數(shù)據(jù)傳輸?shù)耐ㄓ脜f(xié)議。
(UDP)用戶數(shù)據(jù)報(bào)協(xié)議疼约,是一個(gè)面向無連接的協(xié)議卤档。采用該協(xié)議不需要兩個(gè)應(yīng)用程序先建立連接。UDP協(xié)議不提供差錯(cuò)恢復(fù)程剥,不能提供數(shù)據(jù)重傳劝枣,因此該協(xié)議傳輸數(shù)據(jù)安全性差。
https與http區(qū)別
什么是 HTTPS?
HTTPS (基于安全套接字層的超文本傳輸協(xié)議 或者是 HTTP over SSL) 是一個(gè) Netscape 開發(fā)的 Web 協(xié)議织鲸。
你也可以說:HTTPS = HTTP + SSL
HTTPS 在 HTTP 應(yīng)用層的基礎(chǔ)上使用安全套接字層作為子層舔腾。為什么需要 HTTPS ?
超文本傳輸協(xié)議 (HTTP) 是一個(gè)用來通過互聯(lián)網(wǎng)傳輸和接收信息的協(xié)議搂擦。HTTP
使用請(qǐng)求/響應(yīng)的過程稳诚,因此信息可在服務(wù)器間快速、輕松而且精確的進(jìn)行傳輸瀑踢。當(dāng)你訪問 Web 頁面的時(shí)候你就是在使用 HTTP 協(xié)議扳还,但 HTTP
是不安全的才避,可以輕松對(duì)竊聽你跟 Web
服務(wù)器之間的數(shù)據(jù)傳輸。在很多情況下氨距,客戶和服務(wù)器之間傳輸?shù)氖敲舾行⑸J牛枰乐刮唇?jīng)授權(quán)的訪問。為了滿足這個(gè)要求俏让,網(wǎng)景公司(Netscape)推出了HTTPS楞遏,也就是基于安全套接字層的 HTTP 協(xié)議。HTTP 和 HTTPS 的相同點(diǎn)
大多數(shù)情況下首昔,HTTP 和 HTTPS 是相同的寡喝,因?yàn)槎际遣捎猛粋€(gè)基礎(chǔ)的協(xié)議,作為 HTTP 或 HTTPS 客戶端——瀏覽器勒奇,設(shè)立一個(gè)連接到
Web
服務(wù)器指定的端口预鬓。當(dāng)服務(wù)器接收到請(qǐng)求,它會(huì)返回一個(gè)狀態(tài)碼以及消息撬陵,這個(gè)回應(yīng)可能是請(qǐng)求信息珊皿、或者指示某個(gè)錯(cuò)誤發(fā)送的錯(cuò)誤信息。系統(tǒng)使用統(tǒng)一資源定位器
URI 模式巨税,因此資源可以被唯一指定蟋定。而 HTTPS 和 HTTP 唯一不同的只是一個(gè)協(xié)議頭(https)的說明,其他都是一樣的草添。-
HTTP 和 HTTPS 的不同之處
- 1.HTTP 的 URL 以 http:// 開頭驶兜,而 HTTPS 的 URL 以 https:// 開頭
- 2.HTTP 是不安全的,而 HTTPS 是安全的
- 3.HTTP 標(biāo)準(zhǔn)端口是 80 远寸,而 HTTPS 的標(biāo)準(zhǔn)端口是 443
- 4.在 OSI 網(wǎng)絡(luò)模型中抄淑,HTTP 工作于應(yīng)用層,而 HTTPS 工作在傳輸層
- 5.HTTP 無需加密驰后,而 HTTPS 對(duì)傳輸?shù)臄?shù)據(jù)進(jìn)行加密
- 6.HTTP 無需證書肆资,而 HTTPS 需要認(rèn)證證書
正在持續(xù)更新中……