摘要:設(shè)置頁(yè)面是否緩存,為則緩存,則不緩存。。若報(bào)文中同時(shí)出現(xiàn)了和,則以為準(zhǔn)。服務(wù)器與被請(qǐng)求資源的相應(yīng)校驗(yàn)串進(jìn)行比對(duì),決定返回或。有可能存在服務(wù)器沒(méi)有準(zhǔn)確獲取文件修改時(shí)間,或者與代理服務(wù)器時(shí)間不一致等情形。
Traditionally, why has it been better to serve site assets from multiple domains? Do your best to describe the process from the time you type in a website"s URL to it finishing loading on your screen. What are the differences between Long-Polling, Websockets and Server-Sent Events? Explain the following request and response
headers:
Diff. between Expires, Date, Age and If-Modified-...
Do Not Track
Cache-Control
Transfer-Encoding
ETag
X-Frame-Options
緩存存儲(chǔ)策略
Cache-Control
max-age
public // 是
private //表示是否被代理服務(wù)器緩存 否
no-cache
no-store
緩存過(guò)期策略Expires
緩存對(duì)比策略REQ ETags, RESP If-None-Match
REQ Last-Modified, RESP If-Modified-Since
HTTP1.0 緩存字段詳解1.Pragma。 設(shè)置頁(yè)面是否緩存,為Pragma則緩存,no-cache則不緩存。
Expires。有了Pragma來(lái)禁用緩存,自然也需要有個(gè)東西來(lái)啟用緩存和定義緩存時(shí)間。如果Pragma頭部和Expires頭部同時(shí)存在,則起作用的會(huì)是Pragma。,響應(yīng)報(bào)文中Expires所定義的緩存時(shí)間是相對(duì)服務(wù)器上的時(shí)間而言的,其定義的是資源“失效時(shí)刻”,如果客戶(hù)端上的時(shí)間跟服務(wù)器上的時(shí)間不一致(特別是用戶(hù)修改了自己電腦的系統(tǒng)時(shí)間),那緩存時(shí)間可能就沒(méi)啥意義了。
HTTP1.1 緩存字段詳解Cache-Control: 定義緩存過(guò)期時(shí)間。若報(bào)文中同時(shí)出現(xiàn)了 Expires 和 Cache-Control,則以 Cache-Control 為準(zhǔn)。
(1)max-age=600。 表示文件在本地應(yīng)該緩存,且有效時(shí)長(zhǎng)是600秒(從發(fā)出請(qǐng)求算起)。在接下來(lái)600秒內(nèi),如果有請(qǐng)求這個(gè)資源,瀏覽器不會(huì)發(fā)出 HTTP 請(qǐng)求,而是直接使用本地緩存的文件。
(2)no-cache。實(shí)際上她是會(huì)被緩存的,只不過(guò)每次在向客戶(hù)端(瀏覽器)提供響應(yīng)數(shù)據(jù)時(shí),==緩存都要向服務(wù)器評(píng)估緩存響應(yīng)的有效性==
(3)no-store
響應(yīng)不被緩存的意思。
Last-Modified / If-Modified-Since
(1)Last-Modified: 標(biāo)示這個(gè)響應(yīng)資源的最后修改時(shí)間。web服務(wù)器在響應(yīng)請(qǐng)求時(shí),告訴瀏覽器資源的最后修改時(shí)間。
(2)If-Modified-Since:
當(dāng)資源過(guò)期時(shí)(使用Cache-Control標(biāo)識(shí)的max-age),發(fā)現(xiàn)資源具有Last-Modified聲明,則再次向web服務(wù)器請(qǐng)求時(shí)帶上頭 If-Modified-Since,表示請(qǐng)求時(shí)間。若服務(wù)端請(qǐng)求資源的最后修改時(shí)間較新,則響應(yīng)資源內(nèi)容(HTTP 200);若最后修改時(shí)間較舊,則響應(yīng)HTTP 304,告知瀏覽器繼續(xù)使用所保存的cache。
Etag/If-None-Match: Etag/If-None-Match也要配合Cache-Control使用。
(1)Etag: web服務(wù)器響應(yīng)請(qǐng)求時(shí),告訴瀏覽器當(dāng)前資源在服務(wù)器的唯一標(biāo)識(shí)(生成規(guī)則由服務(wù)器覺(jué)得)
(2)If-None-Match: 當(dāng)資源過(guò)期時(shí)(使用Cache-Control標(biāo)識(shí)的max-age),發(fā)現(xiàn)資源具有Etage聲明,則再次向web服務(wù)器請(qǐng)求時(shí)帶上頭If-None-Match (Etag的值)。服務(wù)器與被請(qǐng)求資源的相應(yīng)校驗(yàn)串進(jìn)行比對(duì),決定返回200或304。
既生Last-Modified何生Etag?
HTTP1.1中Etag的出現(xiàn)主要是為了解決幾個(gè)Last-Modified比較難解決的問(wèn)題:
(1) Last-Modified標(biāo)注的最后修改只能精確到秒級(jí),如果某些文件在1秒鐘以?xún)?nèi),被修改多次的話,它將不能準(zhǔn)確標(biāo)注文件的修改時(shí)間。
(2) 如果某些文件會(huì)被定期生成,當(dāng)有時(shí)內(nèi)容并沒(méi)有任何變化,但Last-Modified卻改變了,導(dǎo)致文件沒(méi)法使用緩存。
(3) 有可能存在服務(wù)器沒(méi)有準(zhǔn)確獲取文件修改時(shí)間,或者與代理服務(wù)器時(shí)間不一致等情形。
Last-Modified與ETag是可以一起使用的,服務(wù)器會(huì)優(yōu)先驗(yàn)證ETag,一致的情況下,才會(huì)繼續(xù)比對(duì)Last-Modified,最后才決定是否返回304。
What are HTTP methods? List all HTTP methods that you know, and explain them.HTTP: Status 200 – 服務(wù)器成功返回網(wǎng)頁(yè) 301 永久轉(zhuǎn)移 302 臨時(shí)轉(zhuǎn)移 304 not modified 400 bad request 401 not auth 403 forbidden 500 內(nèi)部錯(cuò)誤 HTTP: Status 404 – 請(qǐng)求的網(wǎng)頁(yè)不存在 HTTP: Status 503 – 服務(wù)不可用https
服務(wù)器向客戶(hù)端發(fā)送公鑰和證書(shū)
客戶(hù)端校驗(yàn)證書(shū),并生成密碼,用公鑰加密
服務(wù)端解析到密碼后,以后的東西都用這個(gè)密碼
想`
http2多路復(fù)用 允許同時(shí)多個(gè)請(qǐng)求,http1.1對(duì)于同一個(gè)域名同時(shí)只能有2-8個(gè)請(qǐng)求
websocket是一個(gè)基于tcp的網(wǎng)絡(luò)協(xié)議,實(shí)現(xiàn)了服務(wù)端與客戶(hù)端的互相通訊,服務(wù)器可以主動(dòng)向客戶(hù)端通訊
xss跨站腳本攻擊是指服務(wù)端未對(duì)用戶(hù)輸入做驗(yàn)證
使得HTML直接執(zhí)行用戶(hù)輸入的惡意腳本
偽造用戶(hù)請(qǐng)求,比如訪問(wèn)a網(wǎng)站之后,用戶(hù)訪問(wèn)了惡意的b網(wǎng)站,b網(wǎng)站回向a網(wǎng)站發(fā)送惡意請(qǐng)求
避免使用get進(jìn)行敏感操作
使用token令牌
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/101230.html
摘要:為什么狀態(tài)需要經(jīng)過(guò)最大報(bào)文段生存時(shí)間才能返回到狀態(tài)雖然按道理,四個(gè)報(bào)文都發(fā)送完畢,我們可以直接進(jìn)入狀態(tài)了,但是我們必須假象網(wǎng)絡(luò)是不可靠的,有可以最后一個(gè)丟失。所以狀態(tài)就是用來(lái)重發(fā)可能丟失的報(bào)文。 1、TCP的三次握手和四次揮手 1.1 三次握手: 客戶(hù)端請(qǐng)求 -> 服務(wù)器響應(yīng) -> 客戶(hù)端確認(rèn)收到響應(yīng),建立連接(保證網(wǎng)絡(luò)正常) showImg(https://segmentfault....
摘要:為了支持在網(wǎng)絡(luò)標(biāo)準(zhǔn)被廣泛采用前,就已經(jīng)建好的網(wǎng)站,這么做是必要的。在接近標(biāo)準(zhǔn)模式下,只有少數(shù)的怪異行為被實(shí)現(xiàn)。和有什么區(qū)別擁有更加嚴(yán)格的標(biāo)簽檢查元素必須被正確地嵌套。元素必須被關(guān)閉。標(biāo)簽名必須用小寫(xiě)字母。 doctype(文檔類(lèi)型) 的作用是什么? doctype聲明指出閱讀程序應(yīng)該用什么規(guī)則集來(lái)解釋文檔中的標(biāo)記 瀏覽器標(biāo)準(zhǔn)模式 (standards mode) 、幾乎標(biāo)準(zhǔn)模式(alm...
摘要:從最開(kāi)始的到封裝后的都在試圖解決異步編程過(guò)程中的問(wèn)題。為了讓編程更美好,我們就需要引入來(lái)降低異步編程的復(fù)雜性。異步編程入門(mén)的全稱(chēng)是前端經(jīng)典面試題從輸入到頁(yè)面加載發(fā)生了什么這是一篇開(kāi)發(fā)的科普類(lèi)文章,涉及到優(yōu)化等多個(gè)方面。 TypeScript 入門(mén)教程 從 JavaScript 程序員的角度總結(jié)思考,循序漸進(jìn)的理解 TypeScript。 網(wǎng)絡(luò)基礎(chǔ)知識(shí)之 HTTP 協(xié)議 詳細(xì)介紹 HTT...
摘要:網(wǎng)易跨境電商考拉海購(gòu)在線筆試現(xiàn)場(chǎng)技術(shù)面面。如何看待校招面試招聘,對(duì)公司而言,是尋找勞動(dòng)力對(duì)員工而言,是尋找未來(lái)的同事。 如何準(zhǔn)備校招技術(shù)面試 標(biāo)簽 : 面試 [TOC] 2017 年互聯(lián)網(wǎng)校招已近尾聲,作為一個(gè)非 CS 專(zhuān)業(yè)的應(yīng)屆生,零 ACM 經(jīng)驗(yàn)、零期刊論文發(fā)表,我通過(guò)自己的努力和準(zhǔn)備,從找實(shí)習(xí)到校招一路運(yùn)氣不錯(cuò),面試全部通過(guò),謹(jǐn)以此文記錄我的校招感悟。 寫(xiě)在前面 寫(xiě)作動(dòng)機(jī) ...
摘要:筆者作為一位,將工作以來(lái)用到的各種優(yōu)秀資料神器及框架整理在此,畢竟好記性不如爛鍵盤(pán),此前端知識(shí)點(diǎn)大百科全書(shū)前端掘金,,不定期更新技巧前端掘金技巧,偶爾更新。計(jì)算數(shù)組的極值技巧使你的更加專(zhuān)業(yè)前端掘金一個(gè)幫你提升技巧的收藏集。 CSS 樣式畫(huà)各種圖形 - 前端 - 掘金下面是一些我在 CSS 中經(jīng)常用到的圖案,還有一些是在css-tricks看到的。記錄一下,以后會(huì)用到。會(huì)持續(xù)更新… 一、...
閱讀 1183·2021-09-27 13:34
閱讀 993·2021-09-13 10:25
閱讀 519·2019-08-30 15:52
閱讀 3457·2019-08-30 13:48
閱讀 658·2019-08-30 11:07
閱讀 2179·2019-08-29 16:23
閱讀 2005·2019-08-29 13:51
閱讀 2337·2019-08-26 17:42