Получить мировое время по api при помощи JS (API запрос)

Как можно получить время не компьютера пользователя через

let time = new Date().getTime();

Не используя другие языки программирования, и не обращаясь к node или фреймворкам.
А получать время по API, не отталкиваясь ни от времени сервера, ни от времени установленного на компьютере пользователя?


Ответы (1 шт):

Автор решения: Denis640Kb

В данном случае необходимо использовать API, для получения текущего времени.
На просторах РУ интернета достаточно мало подобной информации, в связи с этим и нормальных сервисов времени, показывающих бесперебойное время не так много.
По-этому решил добавить решение:

    let plus = 3; // Сколько времени прибавляем (+3 это время по Москве)
    var xhr = new XMLHttpRequest();
    xhr.open('GET', 'http://worldtimeapi.org/api/timezone/Europe/London', false); // Делаем запрос по Лондону
    xhr.send(); // отправляем
    if (xhr.status != 200) {
        console.log( xhr.status + ': ' + xhr.statusText ); // Если статус не равен 200, то выводим ошибку.
    } else {
        let time = xhr.responseText; // получаем текст ответа
        let z = JSON.parse(time).utc_datetime; // Получаем время utc
        let time1 = new Date(z).getTime(); // Переводим в timestamp
        let timestampPlus = time1 + (plus * 60 * 60 * 1000); // Воемя +3 часа. Если надо получить время UTC, то убираем просто параметр plus
        let timePlus = new Date(timestampPlus); // Переводим во время (Тут надо понимать, что система сама переведёт его в текущую временную зону
        let result = timePlus.toUTCString();  // Переводим в строку UTC;
        console.log(result); // Выводим дату. 
    }

P.S Время через API, при желании можно запрашивать по любым временным зонам.

→ Ссылка