Załóżmy, że jest taka sytuacja: jest sobie strona http://www.nazwastrony.pl. Na tej stronie, pod linkiem: http://www.nazwastrony.pl/archiwum/2014/plik.pdf znajduje się właśnie ów plik.pdf, którego zawartość jest zmieniana - niezbyt regularnie, co jakiś okres czasu. Plik ten zawiera ważne dla mnie informacje, jednak nie każdego dnia pamiętam, by sprawdzić, czy pojawiło się w nim coś nowego. Gdy są dokonywane zmiany w tym pliku, nie jest zmieniana jego nazwa. Zmienia się jedynie data jego modyfikacji.
Potrzebne mi jest więc rozszerzenie, które przy każdym uruchomieniu FF będzie automatycznie sprawdzało, czy zmieniła się data modyfikacji tego pliku. Istnieje w ogóle coś takiego?
Powiadamianie o modyfikacji pliku na serwerze.
Moderator: Pomocy?!
Posty: 2
• Strona 1 z 1
Powiadamianie o modyfikacji pliku na serwerze.
Przeglądarka: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0
- Rostov
- Posty: 236
- Z nami od: 22 grudnia 2004, 13:10
Odp: Powiadamianie o modyfikacji pliku na serwerze.
Przeglądarka: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0
Można by stworzyć prosty skrypt dla Greasemonkey, przypisać go do jakiejś strony (może być też lokalna, przy odpowiednich ustawieniach), która by się otwierała przy każdym uruchomieniu przeglądarki (czy to jako jedna ze stron startowych, czy dopisana np. do skrótu do Fx, albo otwierana w każdej sesji - tylko wtedy trzeba wymusić ładowanie zawartości kart także tych nieaktywnych).
I wtedy zarys skryptu mógłby wyglądać tak:
Nie wiem jak tam u Ciebie z programowaniem - ale w razie problemów zacznij od sprawdzenia, czy powyższy skrypt zwraca (m.in.) datę modyfikacji pliku - bo niektóre serwery nie podają takich informacji. Jeśli zwraca datę (tylko pokaż nam w jakim formacie), a nie wiesz co dalej, to pewnie jak nie ja, to ktoś Ci napisze te kilka linijek brakującego kodu.
I wtedy zarys skryptu mógłby wyglądać tak:
- Kod: Zaznacz cały
// ==UserScript==
// @name Powiadamianie o modyfikacji pliku na serwerze
// @namespace Tests
// @include https://www.google.pl/
// @version 0.9
// @grant GM_xmlhttpRequest
// @grant GM_setValue
// @grant GM_getValue
// ==/UserScript==
var ret = GM_xmlhttpRequest({
method: "HEAD",
url: "http://www.nazwastrony.pl/archiwum/2014/plik.pdf",
onload: function(res) {
alert(res.responseHeaders); // testowo, dla sprawdzenia, czy serwer podaje datę modyfikacji pliku
// wyciągnij datę z res.responseHeaders (szukaj: Last-Modified:)
// porównaj datę z wartością zapisaną przez GM podczas ostatniego sprawdzenia (GM_getValue())
// jeśli nowszy - GM_setValue("Ostatnia_modyfikacja", wyciagnieta_data); alert("Jest nowy!!!");
// w przeciwnym razie zamknij okno
}
});
Nie wiem jak tam u Ciebie z programowaniem - ale w razie problemów zacznij od sprawdzenia, czy powyższy skrypt zwraca (m.in.) datę modyfikacji pliku - bo niektóre serwery nie podają takich informacji. Jeśli zwraca datę (tylko pokaż nam w jakim formacie), a nie wiesz co dalej, to pewnie jak nie ja, to ktoś Ci napisze te kilka linijek brakującego kodu.
- Mirek
- Moderator
- Posty: 2158
- Z nami od: 09 sierpnia 2007, 20:37
Posty: 2
• Strona 1 z 1
Wróć do Rozszerzenia dla Firefoksa
Kto jest online
Zarejestrowani użytkownicy: Baidu [Spider], Bing [Bot], Google [Bot]