Дата создания файла по URL
Добрый день.
Возможно ли в js по url получить дату создания файла? Интересует "чистый js" без библиотек. Серверные решения мне в моем случае не помогут. Надеюсь на "возможно". Спасибо. |
Возможно, по цвету машины определить ее владельца?
Если "Вася Пупкин" на ней написать, то возможно. |
Только last-modifed и только для своего домена.
Пример: http://stackoverflow.com/a/5748207
var getMTime = function(url, callback) { var xhr = XMLHttpRequest(); xhr.open('HEAD', url, true); // use HEAD - we only need the headers xhr.onreadystatechange = function() { if (xhr.readyState === 4 && xhr.status === 200) { var mtime = new Date(xhr.getResponseHeader('Last-Modified')); if (mtime.toString() === 'Invalid Date') { callback(); // dont want to return a bad date } else { callback(mtime); } } } xhr.send(); }; getMTime('url here', function(mtime) { if (mtime) console.log('the mtime is:' + mtime.toISOString()); }); |
Цитата:
Для тренировки можешь попробовать определить дату создания файла (какого? =) по этому url Цитата:
Как определишь, пиши)))) |
<img src="/files/tutorial/browser/dom/ball/ball.gif"> <script>function getMTime(url, callback) { var xhr = XMLHttpRequest(); xhr.open('HEAD', url, true); xhr.onreadystatechange = function () { if (xhr.readyState == 4) { if (xhr.status === 200) { callback(xhr.getResponseHeader('Last-Modified')) } } }; xhr.send(); }; getMTime('/files/tutorial/browser/dom/ball/ball.gif', function (mtime) { alert('the mtime is:' + mtime) })</script> Нормально всё с файлами работает, или я что-то не понял? |
Uncaught TypeError: Failed to construct 'XMLHttpRequest': Please use the 'new' operator, this DOM object constructor cannot be called as a function.
|
danik.js, у меня ff - мне по кочерыжке.)
Кроссбраузерность допиливайте под себя. P.S. Сам бы без new не написал, но тут просто на скорую руку правил кривоватый пример со stackoverflow.) |
Какой же ты эгоист)
Трудно что-ли три буквы добавить, шоб демка заработала... |
А я для хрома написал :)
<img src="/files/tutorial/browser/dom/ball/ball.gif" /> <script> getModified('/files/tutorial/browser/dom/ball/ball.gif') .then(function(date) { alert(date); }, function() { alert('error'); }); // ------------------------------- function getModified(url) { var deferred = {}; var promise = new Promise(function(resolve, reject) { deferred.resolve = resolve; deferred.reject = reject; }); var xhr = new XMLHttpRequest(); xhr.open('HEAD', url); xhr.onload = function() { var header = xhr.getResponseHeader('Last-Modified'); var date = new Date(header); deferred.resolve(date); }; xhr.onerror = function() { deferred.reject(); }; xhr.send(); return promise; } </script> Цитата:
А если путь к файлу не известен, то тру-ля-ля :) |
Какая гадость эти ваши промисы... =\
|
Часовой пояс GMT +3, время: 20:16. |