Дата истечения срока действия URL-адреса неправильно рассчитана на сервереJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Дата истечения срока действия URL-адреса неправильно рассчитана на сервере

Сообщение Гость »


Я пытаюсь решить проблему, из-за которой срок действия URL-адреса активации в электронном письме пользователю истекает в течение 3 дней. Срок годности установлен на 90 дней. Когда выполняется пример Java-кода, он правильно показывает дату истечения срока действия, 90 дней. Однако на сервере, где развернуто приложение, срок действия URL-адреса истекает в течение 3 дней с момента получения пользователем электронного письма с URL-адресом для активации.

Из журнала сервера:

Вывод обычного текста=webChannel=GMD_XXX;fundIdentifier=XXXX;email=[email protected];userName=Linkexpire.Xie;timestamp=1695364328794; Данные из зашифрованного токена -->fundIdentifier:XXXX -- имя пользователя:Linkexpire.Xie -- webChannel:GMD_XXX -- отметка времени:**1695364328794** -- электронная почта:[email protected] UID: ХХХХ. Имя пользователя для поиска — Linkexpire.Xie, а имя фонда — van. Фильтр: cn=Linkexpire.Xie. isValidToken --> true eclaimsAccountStatusENABLED Внутри В АКТИВЕ Срок действия URL-адреса активации истекает 24.09.23. Как видно из приведенного выше журнала сервера: Дата, когда пользователь щелкнул URL-адрес в электронном письме: 1695364328794 (что соответствует пятнице, 22 сентября 2023 г., 16:32:08.794 GMT+10:00)

Дата истечения срока действия URL-адреса отображается как: 24.09.23

т.е. в течение 2 дней срок действия URL-адреса истекает.

Теперь срок действия фактического Java-кода составляет 90 дней с даты создания электронного письма с URL-адресом.

Ниже воспроизведен пример кода:

пакет com; импортировать java.util.Calendar; импортировать java.util.Date; импортировать java.text.SimpleDateFormat; общественный класс TestApplication { public static void main(String[] args) { Строковая временная метка = "1695364328794"; //Пятница, 22 сентября 2023 г., 16:32:08.794 validateActivationURLExpiry (метка времени); } public static void validateActivationURLExpiry(String timestamp) { длинное timestampValue = Long.parseLong(timestamp); System.out.println("timestampValue:" + timestampValue); Дата сейчас = новая дата(); Строка expiryInDays = "90"; int expiryInDay = Integer.parseInt(expiryInDays); Календарь Calendar = Calendar.getInstance(); Calendar.setTimeInMillis(timestampValue); Calendar.add(Calendar.DAY_OF_YEAR, expiryInDay); длинная временная меткаValueAfter90Days = Calendar.getTime().getTime(); System.out.println("timestampValueAfter90Days:" + timestampValueAfter90Days); // Добавлен код для определения даты истечения срока действия URL. Дата Дата = новая дата (timestampValueAfter90Days); SimpleDateFormat df2 = новый SimpleDateFormat("дд/ММ/гг"); Строка dateText = df2.format(дата); System.out.println("Срок действия URL-адреса активации истекает " + dateText); if (now.getTime() > timestampValueAfter90Days) { System.out.println("Срок действия URL-адреса уже истек "); //вызываем новое исключение UserManagementException(new Exception("Срок действия URL-адреса уже истек ")); } } } Результат этой программы правильно показывает дату истечения срока действия URL-адреса, т. е. Опубликовать 90 дней:

timestampValue:1695364328794 метка времениValueAfter90Days:1703136728794 Срок действия URL-адреса активации истекает 21.12.23. Точный код развернут на сервере, неясно, почему на сервере истекает срок его действия в течение 3 дней?

Будем благодарны за любую помощь в этом вопросе..

Спасибо

С уважением, Р
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»