zoukankan      html  css  js  c++  java
  • SignalR

    SignalR 是 ASP.NET 团队正在开发一个 Microsoft .NET Framework 库 jQuery 插件,可能包括在以后版本 ASP.NET 平台中。 它提供了一些前景极为光明功能,而这些功能正是 .NET Framework 当前不曾具有,并且是越来越多开发者所需要

    SignalR 是一个集成客户端与服务器库,基于浏览器客户端基于 ASP.NET 服务器组件可以借助它来进行双向多步对话。 换句话说,该对话可不受限制地进行单个无状态请求/响应数据交换;它将继续,直到明确关闭。 对话通过永久连接进行,允许客户端向服务器发送多个消息,并允许服务器做出相应答复,值得注意是,还允许服务器向客户端发送异步消息。是一个完全基于客户及服务器端解决方案,它是以JS作为客户端ASP.NET作为服务端来创建这类应用。

    安装SignalR

    创建MVC5 Web应用程序
     
    工具——>库程序包管理器——>程序包管理器控制台
    安装 SignalR程序包
    Install-Package Microsoft.AspNet.SignalR
    安装Microsoft.Owin.Cors
    Install-Package Microsoft.Owin.Cors


    一丶Hub(中心模型OR集线器模型)(大神之作one/two)
    <1>代理模式
    1.js申明<script src="/signalr/js"></script>自动生成
             //代理服务器通信
                var connection = $.connection.hub;
                var proxy = $.connection.testHub;

     2.调用方法

    ①. 声明客户端方法: proxy.client.xxx = function (x1, x2) {}       // xxx代表客户端方法名称

    ②. 调用服务器端方法: proxy.server.xxx(x1,x2);                       //xxx代表服务器端方法名称


    <2>非代理模式
    1.不需要引入 <script src="/signalr/js"></script>
        [HubName("test")]
        public class TestHub : Hub
        {
        }
     public class Startup
        {
            public void Configuration(IAppBuilder app)
            {
                //默认前端代理-----默认映射路径"/signalr"
                //app.MapSignalR();
    
                  app.MapSignalR("/test", new HubConfiguration());//自己设定访问路径,同时设置Hub配置项,无需指定启动的Hub类,因为它们被自动识别
            }
        }
       //非代理进行与服务器通信
         var conn= $.hubConnection("/test");//根据设置好的映射路径创建连接
         var proxy = connection.createHubProxy("test");//根据连接创建我们需要访问的hub代理。test这里是之前创建好的Testhub类
    
    

    2.常用方法

    ①. 声明客户端方法: proxy.on("方法名",function(x1,x2,x3){});              //接收服务器段信息

    ②. 调用服务器端方法: proxy.invoke("方法名", "参数1","参数2","参数3");  //调用服务器端方法

    
    
    
    
    
     
    作者:chenze
    出处:https://www.cnblogs.com/chenze-Index/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
    如果文中有什么错误,欢迎指出。以免更多的人被误导。
  • 相关阅读:
    程序员的九重境界,你是第几重?
    一个常用的正则表达验证类(转载)
    学习程序设计的态度
    科技期刊学术不端文献检测系统(转载)
    用GridView设计固定行数的入库单报表
    JavaScript技巧集
    线程的概念
    java实验三 类的继承与多态
    常见的网络攻击手段及防御方法
    类和对象的概念(转载)
  • 原文地址:https://www.cnblogs.com/chenze-Index/p/9282136.html
Copyright © 2011-2022 走看看