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.
 
 
 
 
 
 

27 lines
950 B

using System;
namespace ET
{
public class A2R_GetRealmKeyHandler: AMActorRpcHandler<Scene, A2R_GetRealmKey, R2A_GetRealmKey>
{
protected override async ETTask Run(Scene scene, A2R_GetRealmKey request, R2A_GetRealmKey response, Action reply)
{
if (scene.SceneType != SceneType.Realm)
{
Log.Error($"请求的Scene错误,当前场景为:{scene.SceneType}");
response.Error = ErrorCode.ERR_RequestSceneTypeError;
reply();
return;
}
string key = TimeHelper.ServerNow().ToString() + RandomHelper.RandInt64().ToString();
var tokenComp = scene.GetComponent<TokenComponent>();
tokenComp.Remove(request.AccountId);
tokenComp.Add(request.AccountId, key);
response.RealmKey = key.ToString();
reply();
await ETTask.CompletedTask;
}
}
}