Új hozzászólás Aktív témák
-
modder
aktív tag
válasz
pakriksz #3613 üzenetére
vagy nem specifikáltad eléggé nekünk, vagy ez egyáltalán nem egy bonyolult feladat. Sőt, ezt nem is nevezném a klasszikus értelemben vett verziókövetésnek.
Ha csak ennyi kell, ezt egy szimpla szervlettel megoldhatod. Amikor a felhasználó kér egy fájlt, get-ben elküldi az általa ismert utolsó módosítási időt vagy a fájl hashét. A szervlet megnézi, hogy a szerveren lévő fájlnak a módosítási ideje későbbi-e, mint a requestben található, vagy nem egyezik-e a hash. Ha a fájl módosult, akkor visszaküldi a response-ban.
Pont ugyanígy működnek a cache mechanizmusok is http-ben. Erről a két megoldásról tudok. Kicsit utána kell nézi, lehet, hogy Jetty is tudja ezt alapból (lévén, hogy ő egy HTTP server) csak a HTTP headerekben van az info, mert egy decens szerver már csak tudja.
Persze ehhez egyenként kell lekérdezgetni a fájlokat.
Azt sem mondtad, hogy mennyi fájlról lenne szó, és hogy a kliens tudja-e alapból a fájl elérési útját. El kell-e tárolni a korábbi verziókat? -
Karma
félisten
válasz
pakriksz #3613 üzenetére
A dolog onnantól kezdve büdös, mint a Gangesz partja, hogy "sima HTTP fájlszerver". Olyan nem létezik, ha esetleg arra gondolsz, hogy a könyvtár URL-jét beírva mappalistát látsz, az is szerverfüggő, embereknek szánt HTML oldal...
Ha a fájlok nevei kötöttek és előre ismertek, el lehetne lavírozni a HTTP HEAD hívással és a Last-Modified header értékével. De ha a fájlok nevei változhatnak, bővülhetnek, ez nem elég önmagában.
Igénytelen béna megoldást lehet építeni kétféleképpen a szerver okosítása nélkül. Az egyik, hogy a szerver által kigenerált fájllistát visszaparsolod kézzel. A másik, hogy csinálsz egy szöveges/XML fájlt kézzel, amit egy fix helyre, amit lehívsz mindig. És kézzel karban tartod jobb eszköz hiányában...
Ha meg valami okosítást raksz a szerverre, mehet rá SVN, Git (szinkronizálás adott), vagy WebDAV és máris szabványos és kezelhető.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- GAMER PC : RYZEN 5 4500 / 16GB DDR4 / ASUS RX 480 8GB / WiFi / Bluetooth / 512GB M.2 SSD / 500GB HDD
- Dell Latitude 7390, 13,3" FHD IPS , I5-7300U CPU, 16GB DDR4, 512GB SSD, WIN 11, ( olvasd végig )
- Acer PREDATOR HELIOS NEO 16 / i9-14900HX / RTX 4070 (140W) / 1 TB SSD / 240HZ
- Topping A70 Pro fejhallgató erősítő
- Topping D70 Pro Octo DAC
- 138 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4080
- BESZÁMÍTÁS! Gigabyte GA-A620M R5 7600 32GB DDR5 512GB SSD RX 6700XT 12GB Rampage SHIVA Corsair 750W
- 18 éve! Billentyűzet magyarítás magyarosítás. Festés vagy lézerezés és egyebek! 3 lehetőség is van.
- FÉL ÁR ALATT! Lian Li UNI FAN SL120 RGB 1db-os és 3db-os ventilátor szett garanciával
- Fujitsu USB Port Replicator PR09 docking station (1x5K vagy 2x4K felbontás) (DisplayLink)
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged