Есть этот API, который при вызове дает мне время удаленного сервера. Это ответ JSON этого API:
{
hour: 12,
minute: 2,
second: 20,
msFormat: "/Date(1590478340707)/"
}
На этот раз c не синхронизируется с сервером, на котором работает мой код. И мне нужна точность в миллисекундах для моего кода в соответствии со временем удаленного сервера.
Я хочу вызвать другой API этого сервера, точно в зависимости от некоторого времени относительно этого сервера. Таким образом, я не могу использовать DateTime.Now
моего собственного сервера, потому что они не синхронизированы c. У моего сервера и удаленного сервера один и тот же год, один и тот же месяц, один и тот же день, но иногда они могут быть отключены на несколько часов.
Я видел этот вопрос , но ответы предполагают, что у меня есть доступ к коду JavaScript на этом сервере, чтобы получить время. Я не. Я также видел этот вопрос , но он касается отправки времени моего собственного клиента на мой сервер. И, как я уже сказал, у меня нет доступа к созданию даты и времени JavaScript. У меня есть доступ только к данным, показанным выше.
Теперь мне нужно:
- Анализировать на этот раз точно так же, как есть, с точностью до миллисекунд
- На основе тиков на этот раз, чтобы я мог сделать что-то точно в какой-то момент времени, относительно него
Я хотел попробовать new DateTime(year, month, day, hour, minute, second, millisecond)
, но у меня нет количества миллисекунд (это в последний параметр называется msFormat
, и я не знаю его, пока не извлечу его, чего я не знаю).
Я попробовал new DateTime(1970, 01, 01).AddMilliseconds(1590478340707)
, что дает мне неправильное время, потому что я знаю он выключен даже по времени удаленного сервера.
Я тоже пробовал new System.Timers.Timer(1).Elapsed += HandleTimeBasedOnRemoteServerTime;
. Но теперь я не знаю, как узнать время этого сервера, потому что я не могу использовать DateTime.Now
.
Не могли бы вы помочь?