24小时一体机服务
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
2.1 KiB

using Elight.Entity;
using Elight.Logic;
using Elight.Utility;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using SqlSugar;
using System.Net.WebSockets;
namespace _24Hour.Controllers.Common
{
//[Authorize]
public class WebSocketController : Controller
{
//private readonly SqlSugarClient _db;//数据库
//App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户
//private readonly ILogger<LoginController> _logger;//日志
//public WebSocketController(ILogger<LoginController> logger, SqlSugarClient db, User user)
//{
// _logger = logger;
// _db = db;
// _userdata = user.Userdata();
//}
[HttpGet("/ws")]
public async Task WebSocketServer()
{
if (HttpContext.WebSockets.IsWebSocketRequest)
{
try
{
var socket = await HttpContext.WebSockets.AcceptWebSocketAsync();
//ProcessChat(socket);
}
catch (Exception ex)
{
}
}
}
//private async Task ProcessChat(WebSockets context)
//{
// WebSocket socket = context.WebSocket;
// while (true)
// {
// if (socket.State == WebSocketState.Open)
// {
// ArraySegment<byte> buffer = new ArraySegment<byte>(new byte[2048]);
// WebSocketReceiveResult result = await socket.ReceiveAsync(buffer, CancellationToken.None);
// string userMsg = Encoding.UTF8.GetString(buffer.Array, 0, result.Count);
// userMsg = "你发送了:" + userMsg + "于" + DateTime.Now.ToLongTimeString();
// buffer = new ArraySegment<byte>(Encoding.UTF8.GetBytes(userMsg));
// await socket.SendAsync(buffer, WebSocketMessageType.Text, true, CancellationToken.None);
// }
// else
// {
// break;
// }
// }
//}
}
}