Pārlūkot izejas kodu

将时间戳单位从毫秒改为秒

将 `now` 的计算从 `DateTimeOffset.UtcNow.ToUnixTimeMilliseconds()` 修改为 `DateTimeOffset.UtcNow.ToUnixTimeSeconds()`,即从获取当前时间的毫秒数改为获取当前时间的秒数。
将时间戳差值的判断从 `if ((now - request.Timestamp) >= 60000)` 修改为 `if ((now - request.Timestamp) >= 60)`,即从判断时间差是否大于等于60000毫秒(60秒)改为判断时间差是否大于等于60秒。

这些更改的目的是将时间戳的单位从毫秒改为秒,以简化时间差的计算和比较。
xf 1 mēnesi atpakaļ
vecāks
revīzija
508066032e
1 mainītis faili ar 2 papildinājumiem un 2 dzēšanām
  1. 2 2
      src/Hotline/Identity/IdentityDomainService.cs

+ 2 - 2
src/Hotline/Identity/IdentityDomainService.cs

@@ -30,10 +30,10 @@ public class IdentityDomainService : IIdentityDomainService, IScopeDependency
                随机数nonce60s内不能重复
              */
         if (string.IsNullOrEmpty(request.Nonce)) return false;
-        var now = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
+        var now = DateTimeOffset.UtcNow.ToUnixTimeSeconds();
         _logger.LogInformation($"now:{now}, req:{request.Timestamp}");
         if (request.Timestamp >= now) return false;
-        if ((now - request.Timestamp) >= 60000) return false;
+        if ((now - request.Timestamp) >= 60) return false;
         var nonce = _cacheAccountNonce.Get(request.Username)?.Nonce;
         _logger.LogInformation($"nonce:{nonce}, reqnonce:{request.Nonce}");
         if (!string.IsNullOrEmpty(nonce) && string.CompareOrdinal(nonce, request.Nonce) == 0) return false;