zoukankan      html  css  js  c++  java
  • Http基础

    一:网络由下往上

    物理层

    数据链路层

    网络层      (ip协议)

    传输层      (tcp协议)

    会话层      

    表示层和应用层  (http协议)

    二:

    Socket:tcp/ip协议的封装,socket本身不是协议,而只是提供一个tcp/udp接口,通过socket才能使用tcp/ip协议。

        http是轿车,提供了封装或者显示数据的具体形势,socket是发动机,提供了通信的能力。

    tcp三次握手:第一次握手:客服端发送syn包到服务器,进入syn-send状态,等待服务器确认

           第二次握手:服务器收到syn包,进入syn-recv状态,发送syn+ack到客服端

            第三次握手:客户端收到syn+ack包,向服务器发送确认包ack,发送完毕后,客户端服务端进入established状态

         注:握手包里不包含数据,三次握手完毕后,客户端和服务端才开始传输数据。断开连接需要四次握手。

            TCP的三次握手最低限度上保证了连接的可靠性。UDP传送数据前不需要建立连接,服务器接收到数据也不需要确认,所以服务端不需要重发。

    三:Http/Https区别:

    Http:  默认端口为80

           以明文方式发送内容

             不提供任何数据加密

    Https:  Http+SSL(证书验证)

        默认端口为443

        费时

        收费

        不支持ipv4

    四:Http状态码

    当浏览者访问一个网页时,浏览者的浏览器会向网页所在的服务器发出请求。返回一个包含http状态的信息头用以响应浏览器的请求

    200 请求成功

    301 资源(网页)被永久转移到其他url

    404 请求的资源不存在

    500 内部服务器错误

    ------------------------------------------------

    1** 服务器收到请求,需要请求者继续执行操作

    2** 成功,操作被成功接收

    3** 重定向,需要进一步的操作来完成请求

    4** 客户端发出的请求错误

    5** 服务器错误,服务器处理请求的过程出错

  • 相关阅读:
    ButterKnife的使用以及不能自动生成代码问题的解决
    Android事件传递机制
    Java中四种引用类型
    Swiper
    table合并单元格 colspan(跨列)和rowspan(跨行)
    常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全
    解决firefox、chrome不兼容cursor:hand 设置鼠标为手型的方法
    js 验证表单 js提交验证类
    怎么解决浏览器兼容性问题
    JavaScript作用域链
  • 原文地址:https://www.cnblogs.com/HansZimmer/p/9213192.html
Copyright © 2011-2022 走看看