async public Task<AccountSessionData> AllocateAccessTokenAsync(AccountSessionData sessionData)
 {
     var db = redis.GetDatabase();
     sessionData.AccessToken = TokenUtil.GenerateToken(sessionData.Appkey, sessionData.AccountId);
     var key = TokenUtil.GenerateKeyOfToken(sessionData.Appkey, sessionData.AccountId, sessionData.AccessToken);
     var suc = await db.StringSetAsync(key, sessionData.ToJson());
     if (suc)
     {
         return sessionData;
     }
     throw new Exception("Allocate AccessToken Error");
 }
 public async Task<bool> SetUserSessionDataAsync(AccountSessionData userSessionData)
 {
     var key = TokenUtil.GenerateKeyOfToken(userSessionData.Appkey, userSessionData.UserId, userSessionData.AppToken);
     return await redis.GetDatabase().StringSetAsync(key, userSessionData.ToJson(), AppTokenExipreTime);
 }