http協議的運行過程node
1:chrome搜索本身的DNS緩存chrome
2:收索操做系統的DNS緩存,(瀏覽器沒有找到緩存括者緩存已經失效)瀏覽器
3:讀取本地的host文件 緩存
4:瀏覽器發起一個dns的一個系統調用 服務器
5:寬帶運營服務商查看本地緩存(沒找到)多線程
6:運營商服務發起一個迭代的nds解析的請求 app
7:瀏覽器得到域名對應的ip地址,發起http"三次握手"異步
8:tcp/ip連接創建起來後,瀏覽器能夠向服務器發送請求tcp
9:服務器返回請求函數
10:瀏覽器對資源進行解析
node的8種請求方式
get :獲取信息
post:提交數據
put:更新數據(好比更新頭像)
delete:刪除
head:獲取數據
trace
options
狀態碼
1xx 指示信息(請求已接收,開始處理)
2xx 處理成功
3xx 重定向
4xx 客戶端錯誤
5xx 服務器端錯誤
200: 客戶端請求成功
400:客戶端請求有語法錯誤
401: 請求沒有受權
403: 服務器拒絕爲請求服務
404: 沒到找。請求資源沒找到
500: 服務器端出現了不可預料的錯誤
503: 服務器端沒法處理這個請求
幾個重要的機率
同步:按順序執行
異步:經過回調函數,跳開執行,程序的執行的順序和程序排列的順序不一致
單線程:程序按照順序執行。一次執行一個
多線程 :能夠一次處理多道程序,只要分配好資源
上下文
call(),apply() 改變上下文的執行對象,更改this的內容