private void SpawnLoadedUnits(SaveToken save) { _units = new Unit[save.Units.Count]; for (var i = 0; i < save.Units.Count; i++) { var unitToken = save.Units[i]; var unit = new Unit( unitToken.Position, unitToken.Size, unitToken.Velocity, unitToken.Fraction); CreateUnitView(unit); unit.OnDie += OnUnitDie; if (FractionCounts.Count <= unitToken.Fraction) { FractionCounts.Add(0); } FractionCounts[unitToken.Fraction]++; _physics.AddUnit(unit); _units[i] = unit; } }
public static void SaveSimulation(Unit[] units) { var saveToken = new SaveToken { Units = new List <UnitToken>(units.Length) }; foreach (var unit in units) { if (unit == null) { continue; } saveToken.Units.Add(new UnitToken { Fraction = unit.Fraction, Position = unit.Position, Size = unit.Size, Velocity = unit.Velocity }); } var json = JsonUtility.ToJson(saveToken); Debug.Log("Simualtion saved"); PlayerPrefs.SetString(SAVE_KEY, json); }
// Luu access token vao DB public async Task SaveToken(string accessToken, string refreshToken, int userId, string gmail) { var token = new SaveToken(); token.access_token = accessToken; token.refresh_token = refreshToken; token.user_Id = userId; token.gmail = gmail; token.type = 1; await _tokenAppService.SaveTokenAsync(token); }
public IActionResult Login(LoginRequestDto request) { LoginResponseDto response = new LoginResponseDto(); LoginDbService res = new LoginDbService(); response.Login = res.GetLoginAndPass(request.Login).IndexNumber; response.Password = res.GetLoginAndPass(request.Login, request.Password).Password; if (request.Login == response.Login) { var check = (PasswordHashing.Validate(request.Password, res.GetPass(request.Login).Salt.ToString(), res.GetPass(request.Login).Password.ToString())); if (check) { var claims = new[] { new Claim(ClaimTypes.NameIdentifier, "1"), new Claim(ClaimTypes.Name, "jan123"), new Claim(ClaimTypes.Role, "admin"), new Claim(ClaimTypes.Role, "student") }; var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["SecretKey"])); var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256); var token = new JwtSecurityToken ( issuer: "Gakko", audience: "Students", claims: claims, expires: DateTime.Now.AddMinutes(10), signingCredentials: creds ); SaveToken s = new SaveToken(); String refToken = Guid.NewGuid().ToString(); s.Save(response.Login, refToken); return(Ok(new { token = new JwtSecurityTokenHandler().WriteToken(token), refToken } )); } return(StatusCode(401, "Bad Password")); } return(StatusCode(401, "Bad login")); }
public IActionResult RefreshToken([FromRoute] String refToken) { StudentLogin student = new StudentLogin(); CheckToken c = new CheckToken(); student = c.Check(refToken); if (student.refToken != null) { var claims = new[] { new Claim(ClaimTypes.NameIdentifier, "1"), new Claim(ClaimTypes.Name, "jan123"), new Claim(ClaimTypes.Role, "admin"), new Claim(ClaimTypes.Role, "student") }; var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["SecretKey"])); var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256); var token = new JwtSecurityToken ( issuer: "Gakko", audience: "Students", claims: claims, expires: DateTime.Now.AddMinutes(10), signingCredentials: creds ); SaveToken s = new SaveToken(); String newRefToken = Guid.NewGuid().ToString(); s.Save(student.IndexNumber, newRefToken); return(Ok(new { token = new JwtSecurityTokenHandler().WriteToken(token), newRefToken } )); } return(StatusCode(401, "Wrong token")); }
public async Task SaveTokenAsync(SaveToken input) { var token = ObjectMapper.Map <Token>(input); await _tokenRepository.InsertAsync(token); // ko trả ve thi thuong dung cach nay }