最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#使用WebSocket與網頁實時通信的實現(xiàn)示例

 更新時間:2022年08月22日 08:28:01   作者:Three Big Stones  
本文主要介紹了C#使用WebSocket與網頁實時通信的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

目的:使用Fleck框架實現(xiàn)網頁與服務端實時通信

傳統(tǒng)的網站采用http方式與服務端通信,屬于請求響應模式,如何讓網頁與服務器之間能使用TCP這種雙向通信方式實時交流,答案就是使用WebSocket技術。

Fleck框架的安裝方式:

1、使用NuGet包管理工具安裝

Install-Package Fleck -Version 1.2.0

2、下載Fleck源碼并編譯程序集供服務端引用

github地址:https://github.com/statianzo/Fleck/archive/refs/heads/master.zip

gitee地址:https://gitee.com/mylikekefu/Fleck/repository/archive/master.zip

直接在VS中打開項目,并生成fleck項目程序集

3、新建WebSocket服務端項目,命名WebSocketConsoleApp

4、引用程序集Fleck.dll

5、程序入口類編寫服務端代碼,如下所示:

        static void Main(string[] args)
        {
            FleckLog.Level = LogLevel.Debug;
            var allSockets = new List<IWebSocketConnection>();
            var server = new WebSocketServer("ws://192.168.3.3:50000");
            server.Start(socket => {
            //客戶端連接上服務端,則在socket列表添加一個客戶端
            socket.OnOpen = () => {
                Console.WriteLine("Open!");
                allSockets.Add(socket);
            };
            //客戶端離線,則從socket列表刪除這個客戶端
            socket.OnClose = () => {
                Console.WriteLine("Close!");
                allSockets.Remove(socket);
            };
            socket.OnMessage = message => {
                Console.WriteLine(message);
                //給發(fā)送消息的客戶端回復一條消息
                socket.Send("Echo:" + message);
            });
 
            var input = Console.ReadLine();
            //給所有客戶端發(fā)送消息
            while(input!="exit")
            {
                foreach (var socket in allSockets.ToList())
                {
                    socket.Send(input);
                }
                input = Console.ReadLine();
            }
        }

6、啟動項目,打印如下信息,服務端啟動成功。

7、新建客戶端,使用瀏覽器F12控制臺模擬websocket客戶端,代碼如下所示:

ws = new WebSocket("ws://192.168.3.3:50000");
ws.onopen = function() { 
    ws.send('websocekt測試'); 
};
ws.onmessage = function(e) {
    alert("收到服務端的消息:" + e.data);
};

打開兩個瀏覽器頁面,分別F12,控制臺中輸入以上代碼,表示新建了兩個客戶端,將會分別收到服務端回復的消息。

在其中一個客戶端輸入代碼:ws.send('xtt');發(fā)現(xiàn)只有這個客戶端收到了回復的消息。

查看服務端打印情況如下所示:

 到此這篇關于C#使用WebSocket與網頁實時通信的實現(xiàn)示例的文章就介紹到這了,更多相關C# WebSocket與網頁實時通信內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • C# CSV文件讀寫的實現(xiàn)

    C# CSV文件讀寫的實現(xiàn)

    本文主要介紹了C# CSV文件讀寫的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-03-03
  • C#判斷字符串不等于空的方法小結

    C#判斷字符串不等于空的方法小結

    在C#中,要判斷一個字符串是否不等于空(即它既不是null也不是空字符串""),方法有如下幾種,文中通過代碼示例講解的非常詳細,對大家的學習或工作有一定的幫助,需要的朋友可以參考下
    2024-06-06
  • C#中方法的直接調用、反射調用與Lambda表達式調用對比

    C#中方法的直接調用、反射調用與Lambda表達式調用對比

    這篇文章主要介紹了C#中方法的直接調用、反射調用與Lambda表達式調用對比,本文著重講解了方法的三種調用方法以及它們的性能對比,需要的朋友可以參考下
    2015-06-06
  • 基于C#動態(tài)生成帶參數(shù)的小程序二維碼

    基于C#動態(tài)生成帶參數(shù)的小程序二維碼

    在微信小程序管理后臺,我們可以生成下載標準的小程序二維碼,提供主程序入口功能,在實際應用開發(fā)中,小程序二維碼是可以攜帶參數(shù)的,可以動態(tài)進行生成,本文小編就給大家介紹一下如何基于C#動態(tài)生成帶參數(shù)的小程序二維碼,感興趣的朋友可以參考下
    2023-12-12
  • C#實現(xiàn)貪吃蛇小游戲

    C#實現(xiàn)貪吃蛇小游戲

    這篇文章主要為大家詳細介紹了C#實現(xiàn)貪吃蛇小游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • C# 對XML操作入門實例

    C# 對XML操作入門實例

    C# 對XML操作入門實例,需要的朋友可以參考一下
    2013-04-04
  • C# TabControl手動觸發(fā)DrawItem的實現(xiàn)

    C# TabControl手動觸發(fā)DrawItem的實現(xiàn)

    本文主要介紹了C# TabControl手動觸發(fā)DrawItem的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-02-02
  • c#調用arcgis地圖rest服務示例詳解(arcgis地圖輸出)

    c#調用arcgis地圖rest服務示例詳解(arcgis地圖輸出)

    ArcGIS REST API提供了簡單、開放的接口來訪問和使用ArcGIS Server發(fā)布的服務。使用ArcGIS REST API通過URL可以獲取和操作每一個服務中的所有資源和操作
    2013-12-12
  • C#二進制序列化實例分析

    C#二進制序列化實例分析

    這篇文章主要介紹了C#二進制序列化,實例分析了C#二進制序列化的方法,代碼中有較為詳盡的注釋說明,便于理解,需要的朋友可以參考下
    2015-05-05
  • 基于C#中XmlReader讀取Xml的深入分析

    基于C#中XmlReader讀取Xml的深入分析

    本篇文章是對C#中XmlReader讀取Xml進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05

最新評論

金堂县| 东城区| 宁阳县| 杂多县| 鄂托克前旗| 濉溪县| 且末县| 集贤县| 封丘县| 赣榆县| 临湘市| 桃源县| 邹城市| 军事| 孝感市| 保山市| 乌拉特中旗| 西青区| 隆德县| 遵义市| 石嘴山市| 景洪市| 扎鲁特旗| 泽州县| 泸水县| 瑞金市| 南安市| 安新县| 新绛县| 五常市| 临漳县| 措勤县| 文化| 克山县| 金坛市| 临江市| 绥棱县| 容城县| 永州市| 抚宁县| 甘泉县|