zoukankan      html  css  js  c++  java
  • ASP.NET SignalR 系列(一)之SignalR介绍

    一、SignalR介绍

    ASP.NET SignalR 是一个面向 ASP.NET 开发人员的库,可简化将实时 web 功能添加到应用程序的过程。 实时 web 功能是让服务器代码将内容推送到连接的客户端立即可用,而不是让服务器等待客户端请求新数据的能力。

    废话不多说

    传输模式

    二、SignalR 和 WebSocket的区别

    简单的说呢,websocket对客户端和服务端都有要求,而SignalR对兼容性就比较好,它集成了WebScoket和http两种方式,当条件满足时,自动使用WebScoket,否则使用http。可以简单的理解为,WebScoket是SignalR的子集。

    三、SignalR的两种模式
    永久连接

    长连接(长轮询)

    1、如果浏览器是 Internet Explorer 8 或更早版本,则使用长轮询。

    2、如果配置 JSONP (即jsonp参数设置为true启动连接时),使用长轮询。

    3、如果操作正在进行的跨域连接,(即,如果 SignalR 终结点不在托管的页面所在的域中),然后 WebSocket 将在满足以下条件:

                          1、客户端支持 CORS (跨域资源共享)。

                          2、客户端支持 WebSocket

                          3、服务器支持 WebSocket

                         4、如果不满足任何这些条件,则将使用长轮询。

    4、如果未配置 JSONP 并且连接不跨域,如果客户端和服务器支持它,则将使用 WebSocket。

    5、如果客户端或服务器不支持 WebSocket,如果可用,则使用服务器发送事件。

    6、如果服务器发送事件不可用,请尝试使用永久帧。

    7、如果永久连接失败,则使用长轮询。

    文章介绍参考:https://docs.microsoft.com/zh-cn/aspnet/signalr/overview/getting-started/introduction-to-signalr#signalr-and-websocket

    不在多介绍了,下章开始进入撸代码。

  • 相关阅读:
    高可用
    网络线之坑:线序接错了,导致时常出现“未识别的网络”
    Cocos2d-x 坑之一:Xcode文件真实目录与工程视图目录
    【转】ios中@class和 #import 的使用时机
    virtualenv 模块
    pipreqs 组件
    5.15 pymysql 模块
    5.14 数据库函数,流程控制
    5.13 数据库存储过程
    5.12 数据库事务
  • 原文地址:https://www.cnblogs.com/fei686868/p/9560858.html
Copyright © 2011-2022 走看看