unity 连接WebSocket

这篇具有很好参考价值的文章主要介绍了unity 连接WebSocket。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

unity 连接需要联网的WebSocket

using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Sockets;
using System.Net.WebSockets;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Newtonsoft.Json;
using UnityEngine;
//SingletonManager: 继承MonoBehaviour的单例(也可以直接继承MonoBehaviour)
public class WebNetworkClient  : SingletonManager<WebNetworkClient>
    {
    //服务器的地址
    public string url = "ws://192.168.1.206:6070";
    ClientWebSocket Socket;
    CancellationToken ct;
    //启动WebSocket(有需要在其他脚本启动/可以增加一个Awake在这个脚本调用)
    public async void WebSocket()
    {
        try
        {
            Socket = new ClientWebSocket();
            ct = new CancellationToken();
            //添加header
            //Socket.Options.SetRequestHeader("Authorization", token);
            await Socket.ConnectAsync(new Uri(url), ct);
            Debug.Log("开启雷达监听");
            await Socket.SendAsync(new ArraySegment<byte>(Encoding.UTF8.GetBytes("Token=" + UnityHttpHelper.Ins.api_token)), WebSocketMessageType.Text, true, ct); //发送第一条数据

            while (true)
            {
                var result = new byte[10240];
                await Socket.ReceiveAsync(new ArraySegment<byte>(result), ct);//接受数据
                ReceiveAsyncInfo(Encoding.UTF8.GetString(result, 0, result.Length));
            }
        }
        catch (Exception ex)
        {
            Debug.Log(ex.Message);
        }
    }
    void ReceiveAsyncInfo(string info)
    {
        //收到服务器返回的数据
        //Debug.Log(info);
       
    }
    private void OnApplicationQuit()
    {
        //应用关闭 主动断开链接
        Socket.CloseAsync(WebSocketCloseStatus.NormalClosure, "拜拜", ct);
    }
}


文章来源地址https://www.toymoban.com/news/detail-543234.html

到了这里,关于unity 连接WebSocket的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • WebSocket 和 Socket 的区别

    WebSocket 和 Socket 的区别就像Java和JavaScript,并没有什么太大的关系,但又不能说完全没关系。可以这么说: 1.命名方面,Socket是一个深入人心的概念,WebSocket借用了这一概念; 2.使用方面,完全两个东西。 当我们探讨两件事物的区别和联系时,我们想探讨些什么? 对这个问题

    2023年04月08日
    浏览(25)
  • .NET 基于Socket中转WebSocket

    针对IOS App Proxy Server无法直连WebSocket,建立 Socket中转端。 WebSocket 端 : WebSocket 端用于实现实时通信功能。 WebSocket 端通过 WebSocket 协议与中转端通信,中转端可以通过 WebSocket 或其他传输协议与 WebSocket 端建立连接,收发消息。 定义 SendMessageToChatRoomIP 和 JoinChatRoom,用于处理

    2024年04月27日
    浏览(27)
  • Java网络Socket编程-websocket

    实现一个用于监测 WebSocket 连接状态的线程类,其作用是通过创建一个 WebSocket 客户端,连接到指定的 WebSocket 地址,并监测连接的状态。 代码中的 WebSocketThread 类继承自 Thread ,意味着它可以在单独的线程中执行。该线程类使用 Tyrus 提供的 @ClientEndpoint 注解来标识这是一个

    2024年02月08日
    浏览(34)
  • JAVA 中 Socket 和 WebSocket 区别

    区别: Socket: Socket是位于java.net包下的一个类, 是 Java 提供的用于在客户端和服务器之间建立网络通信的底层套接字接口,用于传输层的网络通信。 WebSocket: WebSocket 是一种基于 TCP 协议的通信协议 ,建立在 Socket 的基础上,提供了用于实时 双向通信 的高级接口。 实现方法:

    2024年02月06日
    浏览(28)
  • websocket与C# socket相互通信

    web端代码就是js代码,C#有两种方式:使用第三方库,如Fleck,使用C#原生socket编程实现   web端:   C#端 方式一:使用第三方库Fleck 参考:http://chanpinxue.cn/archives/979.html   方式二:使用C#原生socket编程自行实现   websocket关闭机制 通信双方都可以主动关闭连接,不管谁关闭连接

    2023年04月23日
    浏览(21)
  • WebSocket之socket.io的基本使用

     Socket.IO 是一个WebSocket库,可以在客户端和服务器之间实现低延迟、双向和基于事件的通信。它建立在 WebSocket 协议之上,并提供额外的保证,例如回退到 HTTP 长轮询或自动重新连接。 基本使用 安装socket.io yarn add socket.io  新建js文件与html文件内容如下 这个时候启动node后,

    2024年02月08日
    浏览(28)
  • 面试题:说说 WebSocket与socket的区别

    WebSocket 与 Socket 都属于网络通信领域,但二者之间在实现机制和运行方式上存在很大差异。 Socket: Socket 是一种应用程序接口(API),它提供了许多操作系统下的编程接口,用于实现不同计算机之间的数据传输。Socket 层位于传输控制层(TCP或UDP协议),通过套接字实现双向通

    2024年04月12日
    浏览(28)
  • 如何实现前端实时通信(WebSocket、Socket.io等)?

    聚沙成塔·每天进步一点点 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发者,这里都将为你提供一个系统而

    2024年01月22日
    浏览(32)
  • Go语言网络编程(socket编程)WebSocket编程

    WebSocket是一种在单个TCP连接上进行全双工通信的协议 WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据 在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输 需要安装第

    2024年02月09日
    浏览(56)
  • 带你掌握webSocket 和 socket.io的基本用法

    两者的作用和区别 作用 :使得前后端可以随时地相互沟通。什么是互相沟通呢?像网络请求这种就是客户端向服务端的单向的沟通,当然,网络请求也可以实现双向的沟通,比如 ajax 轮询 ,就是浏览器开个定时器不断的发送请求来了解后端数据库中数据是否变化,但是这个

    2024年02月11日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包