/// <summary> /// socket read byte array. /// </summary> /// <param name="context"></param> /// <param name="message"></param> public override void ChannelRead(IChannelHandlerContext context, object message) { var packet = message as PacketRequest <IMessage>; if (packet == null) { return; } PacketResponse <IMessage> packetResponse = null; try { switch (packet.CommandId) { //获取雇员信息 case 1001: //解析 var requestDTO = packet.Body as TestRequestDTO; //回复 var response = new PacketResponse <TestResponseDTO>(); response.CommandId = 1001; var errorResponse = new TestResponseDTO { Code = 400, Message = "Illegal message parsing failed!!!" }; if (requestDTO == null) { response.Body = errorResponse; } else { var hashVal = requestDTO.HashValue; //var uid = requestDTO.Account; //var pwd = requestDTO.Passworld; var nonce = requestDTO.Nonce; var sign = requestDTO.Sign; var time = requestDTO.ValidateTime; var isVerification = EncryptionUtil.Verification(hashVal, nonce, sign, time); if (isVerification) { response.Body = new TestResponseDTO { Code = 200, Employees = new List <string> { "zhang san", "li si", "wang wu", "zhao liu" } }; } else { response.Body = errorResponse; } if (!isVerification) { context.WriteAndFlushAsync(packetResponse); context.CloseAsync(); } } context.WriteAndFlushAsync(packetResponse); break; } } catch (Exception ex) { Console.WriteLine($"Server request read error { ex.Message }"); } }