private void OnUpdatePWVerifyReq(Datagram datagram) { UpdatePWVerifyReq req = datagram.UnSerialData <UpdatePWVerifyReq>(); UpdatePWResponse response = new UpdatePWResponse(); if (EmailRequestCache.TryRemove(req.NextLabel, out EmailRequestPackage value)) { if (InternalTools.VerificateCode(value.Verify, req.Verifies)) { Guid guid = Guid.NewGuid(); if (OperationFinishCache.TryAdd ( guid, new KeyValuePair <string, DateTime>(value.Email, DateTime.Now) )) { response.NextLabel = guid; } } } datagram.DataType = DatagramType.Client; datagram.MessageType = LoginMessageType.UpdatePWVerifyRes; datagram.Datas = response.ToByteArray(); if (!Send(datagram.ToByteArray())) { Notify(IKXTServer.LogLevel.Error, "数据发送异常"); Close(); } }
bool IDataSender.UpdatePWVerifyReq(Guid request_id, UpdatePWVerifyReq req) { Datagram datagram = new Datagram { DataType = DatagramType.Login, MessageType = LoginMessageType.UpdatePWVerifyReq, RequestID = request_id, Datas = req.ToByteArray() }; return(Send(datagram)); }