• HTML5API(4)


    十三、服务器推送

    • 服务器主动向客户端推送信息
    • 传统的HTTP协议传输,服务器是被动相应客户端的请求

    1、解决方案

    • ajax轮询、ajax长轮询
    • Server-Send-Event
    • WebSocket

    2、ajax轮询

    • 客户端定时向服务器发送请求
    • 可能会造成无用的http请求

    3、ajax长轮询

    • 客户端向服务器发送请求,服务器等到有更新后给出相应。客户端收到更新后在发起新的请求
    • 每个请求都有更新结构,没有无用的http请求
    • 仍然产生了大量的http链接

    十四、Server-Send Event

    1、概述

    • 基于HTTP协议
    • H5新增的API标准

    2、客户端EventSource

    • 事件
    • onpen
    • onmessage
    • onerror
    • 方法
    • close()
    • 属性
    • readyState
    • url

    3、服务端

    • 设置响应头

        Content-type:text/event-stream
        Cache-Control:no-cache
        Connection:keep-alive   
      
    • 内容格式(以 结束, 消息结束符)

       	data:内容
      
       	data:内容
      
      
      
    • 字段

    • data

    • event

    • id

    • retry


    十五、WebSocket

    1、概述

    • 真正的实时通信
    • 双工通信
    • socket协议直接建立在TCP协议上
    • 不存在同源策略

    2、客户端WebSocket

    • 方法
    • send()
    • close()
    • 事件
    • onmessage
    • onopen
    • onerror

    3、node.js使用socket模块

    • node-websocket
    • socket.io
    • ws
  • 相关阅读:
    Play!:SBT代理设置
    CentOS:Oracle最大连接数问题
    STM32:CooCox IDE环境搭建 点亮LED
    删除con.dat
    几种汉字字体推荐
    Python:print输出中文
    Asp.Net:上传文件
    一梦
    身份证验证规则
    git 进阶
  • 原文地址:https://www.cnblogs.com/DCL1314/p/7840538.html
Copyright © 2020-2023  润新知