zoukankan      html  css  js  c++  java
  • 简述HTTP过程

    HTTP连接一个最基本的过程:

    1 客户端连接一个主机;
    2 服务器接收连接, 
    3 客户端请求一个文件, 
    4 服务器发送一个应答. 

    客户端连接一个主机,典型的开始就是发送一个http请求

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

    发送请求之后,DNS会解析域名,定位到对应的主机

    我们用一个函数模拟:

    functiongenerateRequest(url){ //浏览器产生请求
    DNS(urlParse(url).domain,url);//域名解析,urlParse为了解析出网址
    }

    简易域名解析:

    复制代码
    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);
    }

    简易服务器:

    复制代码
    varprogressMap = {//对应的处理程序
    http:function(request){
    },
    https:function(request){
    }
    }
    functionserver(requestUrl){
    setTimeout(function(){//这里可以避免阻塞
    progressMap[request.requestProtocol](request);
    },0)
    }
    复制代码
  • 相关阅读:
    pytest_04
    pytest_03
    pytest_02
    CF 1416C XOR Trie
    CF 1413D
    ZOJ 3725 概率dp
    ZOJ 3726
    位运算
    CF1439C 线段树
    unordered_set
  • 原文地址:https://www.cnblogs.com/westfruit/p/7357994.html
Copyright © 2011-2022 走看看