36. 什么是反向解析
使用場景:模板中的超鏈接,視圖中的重定向
使用:在定義url時為include定義namespace屬性,為url定義name屬性
在模板中使用url標簽:{% url 'namespace_value:name_value'%}
在視圖中使用reverse函數:redirect(reverse('namespce_value:name_value’))
根據正則表達式動態生成地址,減輕后期維護成本。
注意反向解析傳參數,主要是在我們的反向解析的規則后面天界了兩個參數,兩個參數之間使用空格隔開:<a href="{% url 'booktest:fan2' 2 3 %}">位置參數</a>
37.列舉常見的請求方法。
GET 請求指定的頁面信息,並返回實體主體。
HEAD 類似於get請求,只不過返回的響應中沒有具體的內容,用於獲取報頭
POST 向指定資源提交數據進行處理請求(例如提交表單或者上傳文件)。數據被包含在請求體中。POST請求可能會導致新的資源的建立和/或已有資源的修改。
PUT 從客戶端向服務器傳送的數據取代指定的文檔的內容。
DELETE 請求服務器刪除指定的頁面。
CONNECT HTTP/1.1協議中預留給能夠將連接改為管道方式的代理服務器。
OPTIONS 允許客戶端查看服務器的性能。
TRACE 回顯服務器收到的請求,主要用於測試或診斷。
38.列舉常見的狀態碼。
狀態代碼有三位數字組成,第一個數字定義了響應的類別,共分五種類別:
1xx:指示信息--表示請求已接收,繼續處理
2xx:成功--表示請求已被成功接收、理解、接受
3xx:重定向--要完成請求必須進行更進一步的操作
4xx:客戶端錯誤--請求有語法錯誤或請求無法實現
5xx:服務器端錯誤--服務器未能實現合法的請求
常見狀態碼:
200 OK //客戶端請求成功
400 Bad Request //客戶端請求有語法錯誤,不能被服務器所理解
401 Unauthorized //請求未經授權,這個狀態代碼必須和WWW-Authenticate報頭域一起使用
403 Forbidden //服務器收到請求,但是拒絕提供服務
404 Not Found //請求資源不存在,eg:輸入了錯誤的URL
500 Internal Server Error //服務器發生不可預期的錯誤
503 Server Unavailable //服務器當前不能處理客戶端的請求,一段時間后可能恢復正常
更多狀態碼http://www.runoob.com/http/http-status-codes.html
39.http 和 https 的區別?
http的中文叫做超文本傳輸協議,它負責完成客戶端到服務端的一系列操作,是專門用來傳輸注入HTML的超媒體文檔等web內容的協議,它是基於傳輸層的TCP協議的應用層協議
https:https是基於安全套接字的http協議,也可以理解為是http+ssl/tls(數字證書)的組合
http和https的區別:
HTTP 的 URL 以 http:// 開頭,而 HTTPS 的 URL 以 https:// 開頭
HTTP 是不安全的,而 HTTPS 是安全的
HTTP 標准端口是 80 ,而 HTTPS 的標准端口是 443
在 OSI 網絡模型中,HTTPS的加密是在傳輸層完成的,因為SSL是位於傳輸層的,TLS的前身是SSL,所以同理
HTTP無需認證證書,而https需要認證證書
40.簡述 websocket 協議及實現原理。
websocket是一種在單個TCP連接上進行全雙工通訊的協議,雙工(duplex)是指兩台通訊設備之間,允許有雙向的資料傳輸。全雙工的是指,允許兩台設備間同時進行雙向資料傳輸。這是相對於半雙工來說的,半雙工不能同時進行雙向傳輸,這期間的區別相當於手機和對講機的區別,手機在講話的同時也能聽到對方說話,對講機只能一個說完另一個才能說。