美文网首页
HTTP /HTTPS

HTTP /HTTPS

作者: 健健锅 | 来源:发表于2019-01-11 16:05 被阅读53次

 https://zhuanlan.zhihu.com/p/24913080
    
     HTTP 协议
     http 是文本传输协议,属于应用层,用于客户端向服务器获取资源或者发送资源,并且服务器进行相应
     其工作流程大概如下:
            1.根据域名进行DNS 得到ip
                 (1),搜索自身的DNS缓存,如果没有就去系统和磁盘里面找,如果还没有就发起请求得到ip
            2.拿到ip 以后进行tcp 3次握手如上
            3.握手成功以后发送http请求,数据传输完成以后
            4,四次挥手断开连接
     HTTP 由 请求 和 响应 两部分组成
     HTTP请求又由
                 (1)状态行: 请求方法(get),+ 路径  + 协议版本号组成
                 (2)请求头:  cookie 和ua 等主机信息
                 (3)请求体: 传输内容 如post的请求参数
    
     http 响应 由
                 (1)状态行: 状态码如 302 404
                 (2)响应头:一些基本信息
                 (3)响应体:返回的内容
    
    
     常见状态码:
             状态码一般由3位构成:
            
             1xx : 表示请求已经接受了,继续处理。
             2xx : 表示请求已经处理掉了。
             3xx : 重定向。
             4xx : 一般表示客户端有错误,请求无法实现。
             5xx : 一般为服务器端的错误。
             比如常见的状态码:
            
             200 OK 客户端请求成功。
             301 Moved Permanently 请求永久重定向。
             302 Moved Temporarily 请求临时重定向。
             304 Not Modified 文件未修改,可以直接使用缓存的文件。
             400 Bad Request 由于客户端请求有语法错误,不能被服务器所理解。
             401 Unauthorized 请求未经授权,无法访问。
             403 Forbidden 服务器收到请求,但是拒绝提供服务。服务器通常会在响应正文中给出不提供服务的原因。
             404 Not Found 请求的资源不存在,比如输入了错误的URL。
             500 Internal Server Error 服务器发生不可预期的错误,导致无法完成客户端的请求。
             503 Service Unavailable 服务器当前不能够处理客户端的请求,在一段时间之后,服务器可能会恢复正常。
    
    
    其中 get 和 post 的区别:
          1.参数get 放在状态行里面拼接在URL后面,post 放在请求题里面
          2.get的请求参数大小有限制
          3.get 明文 不安全
          4,get可以缓存当做书签,post可以缓存 但是不能当做书签
    
     关于cookie
        因为http 是无状态无连接的 所以断开以后在请求服务器不能使识别是否为同一用户,
        于是就用服务器给客户端一个cookie(服务端生成一个sessionID 放到cookie里面) 里面有一些基本信息,客户端每次请求的时候带上cookie,服务器通过cookie识别是否为统一用户
     关于 持久链接 keep-Alive 和 无状态无连接
         默认开启keep-Alive  这样不用每次请求都进行tcp三次握手
     关于GET的缓存
         如果数据没有变的话,服务器会根据第一次返回的报文 last - modified 进行判断是否需要更新,否则直接使用缓存
     */
   
    /*
     https://zhuanlan.zhihu.com/p/22142170
     https://blog.csdn.net/qq_23167527/article/details/80614454
     HTTPS :
           1.客户端发起ssl 请求,
           2.服务端向客户端发送CA证书
           3.客户端验证CA证书,并且从CA中取出 注册CA时的公钥,生成对称秘钥,对对称秘钥加密,发送给服务器
           4,服务器收到请求,用注册CA时的私钥 解密加密信息 得到 对称秘钥
           然后通信通过对称秘钥加密信息 解密信息
    
     第一种用法:公钥加密,私钥解密。---用于加解密
     第二种用法:私钥签名,公钥验签。---用于签名
    

     */

相关文章

  • HTTP/HTTPS

    说明 HTTP协议即超文本传送协议(Hypertext Transfer Protocol ),是Web联网的基础...

  • HTTP/HTTPS

    HTTP http协议属于明文传输协议,交互过程以及数据传输都没有进行加密,通信双方也没有进行任何认证,通信过程非...

  • HTTP、HTTPS

    WWW: WWW是一个基于HTTP的客户-服务器应用系统,即属于客户-服务器范型的分布式计算应用 HTTP协议: ...

  • http/https

    HTTP 超文本传输协议,用于在Web浏览器和网站服务器之间传递信息。 明文方式发送,不提供任何方式的数据加密,如...

  • http https

    一个网络请求可以简单分为连接服务器 -> 获取数据两个部分。其中连接服务器前还包括 DNS 解析的过程;获取数据后...

  • HTTP AND HTTPS

    HTTP和HTTPS HTTP 大家都知道它是超文本传输协议,也就是提供一种发布和接受HTML页面的方法。 HTT...

  • HTTP and HTTPS

    HTTP HTTP://host:80/ host:主机地址 1.采用IPV4格式 ...

  • http https

    HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,...

  • HTTP/HTTPS

    页面升级兼容https;1)需要将页面中的所有关于点击事件跳转改成:href="https://badu.com"...

  • http/https

    链接地址:http://www.guokr.com/post/114121/ HTTP就是我们平时浏览网页时候使用...

网友评论

      本文标题:HTTP /HTTPS

      本文链接:https://www.haomeiwen.com/subject/jrbxdqtx.html