zoukankan      html  css  js  c++  java
  • 通信协议详情

    第一本书:----------------------------------------------------------------------------------->ES6<---------------------------------------
    Promise
    注意点
    0. Promise 在resolve语句后面,再抛出错误,不会被捕获,等于没有抛出。因为 Promise 的状态一旦改变,就永久保持该状态,不会再变了。
    1. 下面的Promise先打印哪个?答案是先打印同步的操作也就是2,同步的操作应该在.then中完成,所以下面语句改进的地方应该是return resolve(1)
    new Promise(function(resolve,reject){
    resolve(1)
    console.log(2)
    })
    总的来说,操作中引入继承的属性会让问题复杂化,大多数时候,我们只关心对象自身的属性。所以,尽量不要用for...in循环,而用Object.keys()代替。
    箭头函数:
    上面代码中,箭头函数内部的变量arguments,其实是函数foo的arguments变量。
    另外,由于箭头函数没有自己的this,所以当然也就不能用call()、apply()、bind()这些方法去改变this的指向。
    复制数组
    es6:

    1. let, const.
    var 是变量提升,如,var 定义的变量可以提前使用,但不会报错,console.log(a); var a ='test'
    let 块级作用域,只有当前代码块中使用,不想造成变量污染的时候可以用它。
    2. 箭头函数,rest语法,解构赋值。
    3. 模块化机制。


    --------> 通信协议详情:
    socket
    计算机网络协议

    1.规则的集合>建立通信通道和控制通过信息流规则>网络体系结构(各层中的协议和层次之间的接口集合);
    2. 网络协议三要素 语义 语法 时序

    开放系统互连参考模型 OSI/RM模型

    应用层->表示层->会话层->传输层->网络层->数据链路层(传输方式)->物理层(网线等)
    TCP/IP 五层 应用层->传输层->网络层->数据链路层(传输方式)->物理层(网线等)
    TCP/IP 四层 应用层->传输层->网络层->网络接口层

    传输的过程中不断添加头部信息过程-> 数据链路层添加尾部信息-> 物理层(接收的是比特流,规定0和1代表电压的高低,灯光的明灭,规定网线和连接器的规格等)。

    数据链路层处理0和1,如下 :
    以内网协议 -> MAC地址(不能修改,硬件上的) -> 广播
    0和1怎么组合是这层
    网络层
    广播的方式是低效,而且只局限发送者子网络,比如一些simide事,这时网络层出现了,这就是网络层的用处。
    ip地址 -> 子网掩码 -> DNS(域名,一般网站访问都用域名,ip地址也用,少,如:www.baiducom,o) -> ARP -> IP数据包 ipv4 最大值32位,ipv4不够用了,这时ipv6出现
    主机到主机通信
    传输层
    端口到端口的通信
    UDP协议 面向无连接 实时通信 广播通信 header和data两个数据包 快 不可靠及不保证数据完整性
    TCP协议 面向连接 可靠
    三次握手&&四次挥手
    -> 三次握手
    -> 第一次握手 A向B发送信号,请求联机;
    -> 第二次握手 B收到A的请求联机请求,并处理收到的信息;
    -> 第三次握手 A检查B处理信息,连接成功
    -> 四次挥手
    * 第一次挥手 A向B发送报文,请求断开连接;
    * 第二次挥手 B收到A发送处理好的报文,同意断开连接;
    * 第三次挥手 B向A发送报文请求关闭连接;
    * 第四次挥手 A收到B报文,B收到这个报文就关闭连接,A等待几秒没收到回复后,知道B已经关闭了连接,于是A也关闭连接。
    会话层

    建立在传输层之上

    * 建立会话,进行身份认证,权限认证等环节...
    * 保持会话, 设置会话的连接时长,连接时长内不用进行身份认证,权限认证
    * 断开会话, 超过规定时长,关机, 手动断开会话

    表示层
    操作有转码、加密、压缩等操作,如ASCII码;
    语法转换
    语法协商
    连接管理
    https 是在http的基础上承载TLS或SSL协议层上,http 默认80 https 默认443
    keep-alive
    消息结构
    -> 客户端请求消息 客户端发送一个HTTP请求消息包括以下格式: 请求行、请求头、空行和请求数据四个部分组成 。
    iterm2/zsh 终端工具
    HTTP协议详情
    *FeHelper 插件 辅助开发

    --------> websocket
    --------> 高阶函数
    那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。
    windows拖拽时,防止打开在当前页新页面,用于上传图片,阻止浏览器默认在当前页打开
    <div class="app-container material" @dragover.prevent @drop.prevent></div>

  • 相关阅读:
    linux 彻底删除文件及 find命令permission refused问题解决
    ubuntu系统中dpkg lock问题分析及解决
    ubuntu server18.04 更换默认源为阿里源-加速
    docker安装与卸载( liunx )
    ubuntu下dpkg lock问题
    docker pull报x509问题及docker启动失败问题解决
    windows 常用命令行操作
    uwsgi运行django应用是报错no app loaded. going in full dynamic mode
    internal server error原因及解决
    docker-compose启动容器后执行脚本或命令不退出 | 运行内部程序
  • 原文地址:https://www.cnblogs.com/TheYouth/p/13865798.html
Copyright © 2011-2022 走看看