題目:
? ? ? ?1. AJAX是什么,如何使用AJAX?
? ? ? ?2. 常見的HTTP狀態(tài)碼有哪些?
? ? ? ?3. Post 和 get 區(qū)別?
? ? ? ?4. cookie 和session 的區(qū)別?
1. AJAX 是什么,如何使用 AJAX ?
AJAX(Asynchronous JavaScript and XML)即異步JS和XML。其是一種用于創(chuàng)建快速動態(tài)網(wǎng)頁的技術(shù),該技術(shù)可以完成在無需重新加載整個網(wǎng)頁、鏈接不被改變的前提下,與服務(wù)器交換數(shù)據(jù)并更新部分網(wǎng)頁。例如微博下拉加載內(nèi)容。
2. 常見的 HTTP 狀態(tài)碼有哪些?
? ? ? ?HTTP狀態(tài)碼由三個十進制數(shù)字組成,第一個十進制數(shù)字定義了狀態(tài)碼的類型,后兩個數(shù)字沒有分類的作用。HTTP狀態(tài)碼共分為5種類型:
- 信息,服務(wù)器收到請求,需要請求者繼續(xù)執(zhí)行操作
- 成功,操作被成功接收并處理
- 重定向,需要進一步的操作以完成請求
- 客戶端錯誤,請求包含語法錯誤或無法完成請求
- 服務(wù)器錯誤,服務(wù)器在處理請求的過程中發(fā)生了錯誤
| 狀態(tài)碼 | 含義 | 解釋 |
|---|---|---|
| 200 | OK/正常 | ? ? ? ?請求已正常處理,一般用于相應GET和POST請求。 |
| 301 | Moved Permanently/永久性重定向 | 請求的資源已經(jīng)被分配了新的URI,以后應使用資源現(xiàn)在所指的URI。 |
| 302 | Found/找到 | ? ? ? ?臨時性重定向。和301相似,但302代表的資源不是永久性移動,只是臨時性性質(zhì)的。 |
| 304 | (Not Modified/未修正 | ? ? ? ?資源已找到,但未符合條件請求。 |
| 307 | temporary redirect/暫時重定向 | ? ? ? ?與302有相同的含義 |
| 400 | Bad Request/錯誤請求 | ? ? ? ?服務(wù)器端無法理解客戶端發(fā)送的請求,請求報文中可能存在語法錯誤。 |
| 401 | Unauthorized/未授權(quán) | ? ? ? ?該狀態(tài)碼表示發(fā)送的請求需要有通過HTTP認證(BASIC認證,DIGEST認證)的認證信息。 |
| 403 | Forbidden/禁止 | ? ? ? ?不允許訪問那個資源。該狀態(tài)碼表明對請求資源的訪問被服務(wù)器拒絕了。(權(quán)限,未授權(quán)IP等) |
| 404 | Not Found/未找到 | ? ? ? ?服務(wù)器上沒有請求的資源。路徑錯誤等。 |
| 410 | Gone/已經(jīng)不存在 | ? ? ? ?告訴客戶端所請求的文檔已經(jīng)不存在并且沒有更新的地址。410狀態(tài)不同于404,410是在指導文檔已被移走的情況下使用,而404則用于未知原因的無法訪問。 |
| 500 | Internal Server Error/內(nèi)部服務(wù)器錯誤 | ? ? ? ?內(nèi)部資源出故障了。該狀態(tài)碼表明服務(wù)器端在執(zhí)行請求時發(fā)生了錯誤。也有可能是web應用存在bug或某些臨時故障。 |
| 501 | Not Implemented/未實現(xiàn) | ? ? ? ?狀態(tài)告訴客戶端服務(wù)器不支持請求中要求的功能。 |
3. Post 和 get 區(qū)別?
網(wǎng)上找到的所謂標準答案:
? ? ? ?1、get用于獲取數(shù)據(jù),post用于提交數(shù)據(jù)
? ? ? ?2、get提交參數(shù)追加在url后面,post參數(shù)可以通過http body提交
? ? ? ?3、get的url會有長度上的限制,而post的數(shù)據(jù)則可以非常大
? ? ? ?4、get提交信息明文顯示在url上,不夠安全,post提交的信息不會在url上顯示
? ? ? ?5、get提交可以被瀏覽器緩存,post不會被瀏覽器緩存
? ? ? ?包括我現(xiàn)在也認為以上沒有什么毛病,但是有人證明了它們基本上都是有問題的:請點我
4. cookie 和 session 的區(qū)別
? ? ? ?1. cookie數(shù)據(jù)存放在客戶的瀏覽器上,session數(shù)據(jù)放在服務(wù)器上。
? ? ? ?2. cookie不是很安全,別人可以分析存放在本地的COOKIE并進行COOKIE欺騙考慮到安全應當使用session。
? ? ? ?3. session會在一定時間內(nèi)保存在服務(wù)器上。當訪問增多,會比較占用服務(wù)器的性能,型網(wǎng)站會有專門Session服務(wù)器。Cookie存在客戶端沒問題。
? ? ? ?4. 單個cookie保存的數(shù)據(jù)不能超過4K,很多瀏覽器都限制一個站點最多保存20個cookie。
? ? ? ?5. 存儲數(shù)據(jù)量方面:session 能夠存儲任意的 java 對象,cookie 只能存儲 String 類型的對象
? ? ? ? 理解Cookie和Session機制