using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using BestHTTP;
using BestHTTP.WebSocket;
using System.Text;
public class WebSocket_
{
string address = "wss://127.0.0.1:8000";
WebSocket webSocket;
//初始化
public void Init()
{
if (webSocket == null)
{
webSocket = new WebSocket(new Uri(address));
webSocket.OnOpen += OnWebSocketOpen;//建立与服务器的连接时调用。在此事件之后,WebSocket 的 IsOpen 属性将为 True,直到我们或服务器关闭连接或发生错误。
webSocket.OnMessage += OnMessageReceived;//从服务器接收到文本消息时调用。
webSocket.OnBinary += OnBinaryMessageReceived;//从服务器接收到二进制 blob 消息时调用
webSocket.OnClosed += OnWebSocketClosed;//当客户端或服务器关闭连接时调用。当客户端通过关闭函数关闭连接时,它可以提供一个代码和一个指示关闭原因的消息。服务器通常会回显我们的代码和消息。
webSocket.OnError += OnError;//在无法连接到服务器、发生内部错误或连接丢失时调用。第二个参数是描述错误的字符串。
}
}
//场景关闭时,关闭连接
public void Destroy()
{
if (webSocket != null)
{
webSocket.Close();//关闭连接
webSocket = null;
}
}
public void fa(string str) {
webSocket.Send(str);
}
public void OnWebSocketOpen(WebSocket ws)
{
Debug.Log("连接开启");
webSocket.Send("123");
}
void OnMessageReceived(WebSocket ws, string message)
{
Debug.Log("从服务器收到的消息: " + message);
}
void OnBinaryMessageReceived(WebSocket ws, byte[] data)
{
Debug.Log("从服务器接收的二进制消息: " + data);
}
void OnWebSocketClosed(WebSocket ws, UInt16 code, string message)//代码,关闭原因
{
Debug.LogFormat("关闭: code={0}, msg={1}", code, message);
}
void OnError(WebSocket ws, string error)
{
Debug.LogError("出错: " + error);
}
}
BestHTTP Dome
最新推荐文章于 2024-05-24 18:17:43 发布