国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

.Net6使用WebSocket與前端進(jìn)行通信

這篇具有很好參考價值的文章主要介紹了.Net6使用WebSocket與前端進(jìn)行通信。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

1. 創(chuàng)建類WebSocketTest:

using System.Net.WebSockets;
using System.Text;

namespace WebSocket.Demo
{
    public class WebSocketTest
    {
        //當(dāng)前請求實例
        System.Net.WebSockets.WebSocket socket =null;
        public async Task DoWork(HttpContext ctx)
        {
            socket = await ctx.WebSockets.AcceptWebSocketAsync();
            //執(zhí)行監(jiān)聽
            await EchoLoop();
        }
        public async Task EchoLoop()
        {
            //創(chuàng)建緩存區(qū)
            var buffer = new byte[1024];
            var arraySeg = new ArraySegment<byte>(buffer);
            while (this.socket.State == WebSocketState.Open)
            {
                var incoming = await this.socket.ReceiveAsync(arraySeg, CancellationToken.None);
                //判斷類型讀取
                if (incoming.MessageType == WebSocketMessageType.Text)
                {
                    //incoming.Count  代表,請求內(nèi)容字節(jié)數(shù)量
                    string userMessage = Encoding.UTF8.GetString(arraySeg.Array, 0, incoming.Count);
                    //接收客戶端的字符串
                    userMessage = "客戶端信息: " + userMessage + " 。時間: " +
                        DateTime.Now.ToLongTimeString();
                    ArraySegment<byte> segResult = new ArraySegment<byte>(Encoding.UTF8.GetBytes(userMessage));
                    await socket.SendAsync(segResult, WebSocketMessageType.Text, true, CancellationToken.None);
                }
                else
                {
                }

                byte[] backInfo = System.Text.UTF8Encoding.Default.GetBytes("服務(wù)端相應(yīng)內(nèi)容結(jié)束");
                var outgoing = new ArraySegment<byte>(backInfo, 0, backInfo.Length);
                await this.socket.SendAsync(outgoing, WebSocketMessageType.Text, true, CancellationToken.None);
            }
        }
    }
}

2. 在program.cs中進(jìn)行綁定

/*創(chuàng)建一個WebSocket中間件,并將WebSocket請求路由到"/websocket/test"路徑上。在處理WebSocket請求時,通過WebSocketTest.DoWork方法來處理連接和消息*/

app.UseWebSockets();
app.Map("/websocket/test", con => //當(dāng)收到“/websocket/test”請求時,執(zhí)行以下代碼
{
    con.UseWebSockets();          //中間件,啟用websocket支持
    con.Use(async (ctx, next) =>  //處理websocket請求時,執(zhí)行以下邏輯
    {
        //創(chuàng)建監(jiān)聽websocket
        WebSocketTest ws = new WebSocketTest();
        await ws.DoWork(ctx);
        await next.Invoke();      //執(zhí)行下一個中間件
    });
});

3. 使用websocket在線工具模擬請求:

.Net6使用WebSocket與前端進(jìn)行通信,.net,websocket文章來源地址http://www.zghlxwxcb.cn/news/detail-771498.html

到了這里,關(guān)于.Net6使用WebSocket與前端進(jìn)行通信的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 微信小程序如何使用原生Websocket api與Asp.Net Core SignalR 通信

    微信小程序如何使用原生Websocket api與Asp.Net Core SignalR 通信

    如題,這可能算是.net 做小程序的服務(wù)端時,繞不開的一個問題,老生常談了。同樣的問題,我記得我2018/19年的一個項目的解決方案是: 修改官方的SignalR.js的客戶端 :把里面用到瀏覽器的Websocket改成微信小程序的官方api的。目前網(wǎng)上也有不少這樣的方案,已經(jīng)改好開源了;

    2024年02月09日
    瀏覽(39)
  • 【vue3】前端應(yīng)用中使用WebSocket與服務(wù)器進(jìn)行通信并管理連接狀態(tài)。

    1、寫一個hook函數(shù) url 是WebSocket的服務(wù)器地址,其中 Math.random() 用于生成一個隨機(jī)數(shù),以避免緩存問題。 onConnected 、 onDisconnected 和 onError 是連接建立、斷開和出錯時的回調(diào)函數(shù),你可以根據(jù)實際需求來定義它們。 onMessageDefault 是當(dāng)接收到消息時的默認(rèn)處理函數(shù),在這里將接收

    2024年02月09日
    瀏覽(46)
  • .Net6使用SignalR實現(xiàn)前后端實時通信

    .Net6使用SignalR實現(xiàn)前后端實時通信

    后端代碼 (Asp.net core web api,用的.net6) Program.cs 代碼運(yùn)行邏輯: ?1. 通過 WebApplication.CreateBuilder(args) 創(chuàng)建一個 ASP.NET Core 應(yīng)用程序建造器。 2. 使用 builder.Services.AddControllers() 添加 MVC 控制器服務(wù)和 builder.Services.AddSignalR() 添加 SignalR 服務(wù)。 3. 注冊 Swagger 和 Cors 跨域設(shè)置的服務(wù)

    2024年02月01日
    瀏覽(22)
  • .Net6 使用Autofac進(jìn)行依賴注入

    剛接觸.net 6,記錄一下在.net6上是怎么使用Autofac進(jìn)行動態(tài)的依賴注入的 1、新建一個webapi項目,框架選擇net 6 2、引用Nuget包---Autofac.Extensions.Dependency 3、在Program.cs上添加如下代碼 4. 或 以及再startup.cs中添加ConfigureContainer方法 ? ?public void ConfigureContainer(ContainerBuilder builder) ? ?

    2024年04月11日
    瀏覽(19)
  • .NET6 項目使用RabbitMQ實現(xiàn)基于事件總線EventBus通信

    .NET6 項目使用RabbitMQ實現(xiàn)基于事件總線EventBus通信

    一、概念及介紹 ????????通常通過使用事件總線實現(xiàn)來執(zhí)行此發(fā)布/訂閱系統(tǒng)。 事件總線可以設(shè)計為包含 API 的接口,該 API 是訂閱和取消訂閱事件和發(fā)布事件所需的。 它還可以包含一個或多個基于跨進(jìn)程或消息通信的實現(xiàn),例如支持異步通信和發(fā)布/訂閱模型的消息隊列或

    2024年04月28日
    瀏覽(26)
  • 【W(wǎng)ebSocket】前端使用WebSocket實時通信

    【W(wǎng)ebSocket】前端使用WebSocket實時通信

    最近寫項目,需要實現(xiàn)消息通知和實時聊天的功能,就去了解了一些關(guān)于websocket的知識,總結(jié)如下。 WebSocket 是一種在 Web 應(yīng)用中實現(xiàn)實時通信的協(xié)議。與傳統(tǒng)的 HTTP 請求不同,WebSocket 連接在客戶端和服務(wù)器之間建立一個 持久性 的 雙向通信管道 ,使得數(shù)據(jù)可以在連接打開后

    2024年02月11日
    瀏覽(23)
  • 使用Autofac進(jìn)行服務(wù)注冊,適用版本.Net6(程序集、泛型)

    具體的也可以去參考官網(wǎng):https://autofac.readthedocs.io/en/latest/integration/aspnetcore.html 首先在Program.cs所屬的層中引用nuget包: nuget網(wǎng)址:https://www.nuget.org/packages? 可以使用NuGet包管理器進(jìn)行搜索安裝 在Program.cs中加入如下代碼: 代碼中SmartHealthcare.Application可以替換為具體自己項目中Ap

    2024年02月16日
    瀏覽(24)
  • 遠(yuǎn)程服務(wù)和web服務(wù)和前端,三方通過socket和websocket進(jìn)行雙向通信傳輸數(shù)據(jù)

    1. 什么是socket? 在計算機(jī)通信領(lǐng)域,socket 被翻譯為“套接字”,它是計算機(jī)之間進(jìn)行通信的一種約定或一種方式。通過 socket 這種約定,一臺計算機(jī)可以接收其他計算機(jī)的數(shù)據(jù),也可以向其他計算機(jī)發(fā)送數(shù)據(jù)。 2. 什么是websocket? WebSocket是一種網(wǎng)絡(luò)通信協(xié)議,是HTML5新增的特性,

    2024年02月15日
    瀏覽(21)
  • 在Django5中使用Websocket進(jìn)行通信

    參考文檔:https://channels.readthedocs.io/en/latest/installation.html 新增:chat/templates/chat/index.html 修改:chat/views.py 新增:chat/urls.py 修改:Django5Websocket/urls.py 啟動服務(wù),瀏覽器訪問:http://localhost:8000 新增:chat/consumers.py 新增:chat/routing.py 修改:Django5Websocket/wsgi.py 修改:chat/views.py 新增

    2024年02月03日
    瀏覽(26)
  • .net6中WPF的串口通信和USB通信

    .net6中WPF的串口通信和USB通信

    之前寫過串口通信,不過是winform的。 c#使用串口進(jìn)行通信_c# 串口通信_故里2130的博客-CSDN博客 今天說一下,.net6中wpf的串口通信和USB通信,在工控行業(yè)中,這2種的方式非常多,還有網(wǎng)口通信,它們都是用來和硬件打交道的,進(jìn)行交互信息。 一、串口通信 1.安裝System.IO.Ports

    2024年02月16日
    瀏覽(30)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包