簡述HTTP過程

HTTP鏈接一個最基本的過程:瀏覽器

1 客戶端鏈接一個主機;
2 服務器接收鏈接, 
3 客戶端請求一個文件, 
4 服務器發送一個應答. 服務器

客戶端鏈接一個主機,典型的開始就是發送一個http請求dom

好比:url = 'http://www.xesam.com:8080/search?key=xe';函數

發送請求以後,DNS會解析域名,定位到對應的主機url

咱們用一個函數模擬:server

functiongenerateRequest(url){ //瀏覽器產生請求
DNS(urlParse(url).domain,url);//域名解析,urlParse爲了解析出網址
}

簡易域名解析:ip

複製代碼
varipMap = {
'www.xesam.com' : server,
'www.xesam_1.com' : 'server_1'
}
functionDNS(domain,url){
varserver = ipMap[domain];//定位主機
establishConnection(server,url);//若是服務器確認,則創建鏈接
}
複製代碼

簡易創建鏈接:域名

functionestablishConnection(server,requestUrl){
server(requestUrl);
}

簡易服務器:io

複製代碼
varprogressMap = {//對應的處理程序
http:function(request){
},
https:function(request){
}
}
functionserver(requestUrl){
setTimeout(function(){//這裏能夠避免阻塞
progressMap[request.requestProtocol](request);
},0)
}
複製代碼
相關文章
相關標籤/搜索