前端面試準備 2

2021-08-07 14:33:23 字數 1454 閱讀 8193

1.一次完整的http事務是怎麼樣的過程?

(1)通過網域名稱尋找ip位址

瀏覽器會首先搜尋自己的瀏覽器快取裡面有沒有dns快取,如果找到則結束,裡面有網域名稱對應的ip位址。

如果瀏覽器快取沒有找到,則會繼續往作業系統中查詢是否有dns快取,如果找到則結束,否則進行下一步。

瀏覽器會向本地的dns服務提供商發起網域名稱解析請求,通過udp協議傳送,運營商的dns伺服器首先會查詢自身的快取,如果沒有則會繼續往根網域名稱傳送請求,根網域名稱伺服器如果發現是com或者cn的網域名稱,則會讓你往com的dns伺服器查詢,最終查詢成功之後,傳送給了運營的dns伺服器,然後運營商返回給作業系統,作業系統返回給瀏覽器,他們也會快取乙份。

(2).通過ip位址往 服務端請求資源

瀏覽器獲得了ip位址之後,就可以去查詢對應伺服器上的資源。首先會檢視本地是否快取了當前請求的資源的文件,如果有快取,則直接頁面顯示到瀏覽器上。

如果沒有快取,接下來先要進行tcp三次握手,和服務端握手成功後,傳送http請求,服務端會判斷請求的資源是否和上次請求的沒有更改,如果沒有更改,則返回304,如果有更改,則返回200,並把資源檔案傳送給瀏覽器客戶端。

到此,http的一次完整事務就結束了。

2.web攻擊技術有哪些?

(1)xss跨站指令碼攻擊

一般xss攻擊都是html注入的問題,沒有對攻擊者的輸入進行嚴格的過濾和檢查,然後進入資料庫中,最後在其他使用者那裡執行了攻擊者的**。避免的方法是要對使用者的輸入做乙個嚴格的檢查和過濾。

(2)跨站請求偽造

偽造使用者的請求,冒充使用者在站內的正常操作。

1.登入受信任**a,並在本地生成cookie

2.在不登出a的情況下,訪問危險**b

csrf是如何預防的?有以下幾種方法:

利用referer資訊

referer代表訪問,訪問者url的**,如果不是**於**a,則不管這個請求。

利用token

使用者提交請求時,後台返回給客戶端乙個token,以後每次請求時,都帶上加密後的token,服務端接收到請求之後,需要先驗證這個token的正確性才進行響應。

利用驗證碼

使用者提交的時候,需要正確驗證驗證碼,以防惡意**的提交。

3.ajax是什麼?ajax互動模型?同步和非同步的區別?如何解決跨域問題?

access-control-allow-credentials:true

access-control-expose-headers:qq代表所有

第乙個字段其實是請求**,或者可以用*代表所有都可以跨域。第二個欄位可選,表明可以返回這個欄位的值。

4,什麼是優雅降級和漸進增強?

優雅降級

先對**構建完整的功能,然後在對低版本的瀏覽器進行相容性開發。

漸進增強

首先針對低版本瀏覽器進行構建頁面,保證最基本的功能,然後在針對高階瀏覽器進行效果.互動等改進和追加功能能達到更好地使用者體驗。

前端面試準備

1.簡單介紹下ajax ajax是web2.0技術的核心由多種技術集合而成,使用ajax技術不必重新整理整個頁面,只需對頁面的區域性進行更新,可以節省網路頻寬,提高頁面的載入速度,從而縮短使用者等待時間,改善使用者體驗。2.tcp與udp的區別 1 tcp面向連線 如打 要先撥號建立連線 udp是無...

前端面試準備(js)

1 1 使用字串函式 或者寫做 function reversestring2 str 1 2 使用for迴圈 function reversestring3 str return newarray 1 3 使用遞迴 function reversestring4 str else 2 1 使用sp...

前端面試準備 CSS(二)

本文是根據知乎愛前端不愛戀愛 這個問題的原因可以上述到sgml 標準通用標記語言 和tex 排版工具 它實際上是乙個行內 inline 的問題,它由空格 換行或回車所產生空白符所致 解決方法 1 改變 書寫方式。2 改變字元大小。3 改變元素間距。font size,letter size,word...