Verwenden Sie das folgende Programm zum Generieren des Tokens, basierend auf der Zeit (aktuelle Zeit). Es war ordnungsgemäß funktionieren. Es bedeutet, dass das Token generiert wird.Wie sperrt man das Token, basierend auf der Zeit in asp.net?
public string GenerateToken()
{
MD5 md5 = System.Security.Cryptography.MD5.Create();
DateTime input = DateTime.Now;
byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(input.ToString());
byte[] hash = md5.ComputeHash(inputBytes);
StringBuilder sb = new StringBuilder();
for (int i = 0; i < hash.Length; i++)
{
sb.Append(hash[i].ToString("X2"));
}
return sb.ToString();
}
Und ich folgendes Programm für try zu sperren (verfallen), um die Token mit in 2 minutes.It bedeutet, dass ich die GetToken() method
zuzugreifen, wird er das Token für particular Time(current Time)
.Ich zurückkehren muß gültige Zeit 2 Minuten einzustellen für dieses token.Incase ich auf die getToken() vor 2 Minuten zugreifen Ich muss das gleiche Token.Aber ich auf die getToken()
nach den 2 Minuten brauche ich neues Token bekommen. Wie kann ich das tun? Wie sperre ich das Token?
public string GetToken()
{
DateTime currentTime = DateTime.UtcNow;
tokenExp = DateTime.UtcNow.AddMinutes(2);
if (tokenExp >= currentTime)
{
token = GenerateToken();
return token;
}
else lock (tokenLock)
{
if (tokenExp >= currentTime)
{
token = GenerateToken();
//return token;
}
return token;
}
Ich versuche, das Token in GetToken zu sperren() – user
Keine Notwendigkeit, eine Sperre zu erwerben. Ändern Sie Ihre GenerateToken-Methode, um das dateTime wie oben gezeigt zu verwenden. Was es tun würde, ist, dass sich die DateTime einmal in zwei Minuten ändert und nicht jede Sekunde/Minute. – Ramesh
kann man den GenerateToken() Code bearbeiten und zurück posten, da ich nicht in der Lage bin, Ihren Standpunkt zu verstehen. – user