Jak programowo określić, czy plik binarny na stronie internetowej (np. Obraz) zmienił się bez pobierania? Czy istnieje sposób użycia metod HTTP (w języku C# w tym przypadku) do sprawdzenia przed jego pełnym pobraniem?W jaki sposób można programowo określić, czy plik binarny na stronie internetowej (np. Obraz) zmienił się bez pobierania?
Odpowiedz
Można sprawdzić, czy plik został zmieniony, czy też nie, wysyłając żądanie pod nr HEAD.
Następnie powrócił nagłówek odpowiedzi może zawierać Last-Modified lub ETag Jeżeli wsparcie serwera WWW.
Uzgodnione, ETag są najlepszym rozwiązaniem tego problemu, gdy są obsługiwane. –
Tak, to jest podejście w rozwiązaniu, które zrobiłem. i ETag istnieje w użyciu, w innym przypadku wraca do Last-Modified. –
Możesz wykonać żądanie HEAD i sprawdzić ostatnio zmodyfikowaną wartość datetime, a także długość treści.
Dziękuję za wzmiankę o długości treści: jest to prosta kontrola, ale wielki fallback, jeśli serwer nie jest skonfigurowany prawidłowo –
Naprawdę, chcesz wyszukać nagłówek Last-Modified po wydaniu żądania HEAD
(zamiast GET
). Napisałem kod, aby uzyskać HEAD
przez WebClient
here.
Należy zauważyć, że nie wszystkie witryny zawierają poprawny nagłówek Last-Modified, mimo że powinny mieć poprawnie buforowaną witrynę. –
Ale można zrobić tylko tyle, jeśli serwer nie gra zgodnie z regułami. – Bryan
Jeśli serwer nie udostępnia poprawnych nagłówków kontroli pamięci podręcznej (Last-Modified itp.), Nie ma możliwości sprawdzenia, czy plik zmienił się od czasu określonego poza pobieraniem i porównywaniem zawartości. –
- 1. Czy mogę programowo logować się na stronie internetowej bez zapisywania hasła w postaci zwykłego tekstu?
- 2. Odsłuchanie, czy plik cookie się zmienił
- 3. Jak wyświetlić lokalny obraz na stronie internetowej?
- 4. Jak określić długość (w pikselach) ciągu renderowanego na stronie internetowej?
- 5. Wprowadzanie zmian na stronie internetowej bez odświeżania
- 6. W jaki sposób programowo określić, czy plik MP3 to CBR, czy VBR? (najlepiej przy użyciu C#)
- 7. Jak sprawdzić w pythonie, czy plik w folderze się zmienił?
- 8. W jaki sposób menedżer pobierania dzieli plik na kilka części?
- 9. Jak sprawdzić, czy obraz został znaleziony na stronie internetowej?
- 10. Jaki jest najlepszy sposób wyświetlania filmów wideo na stronie internetowej?
- 11. jaki aspekt rozwijać najpierw na stronie internetowej?
- 12. Jak osadzić plik mjpeg na stronie internetowej
- 13. Czy można użyć przeglądarki internetowej bez pakowania?
- 14. Czy można określić rozmiar pliku do pobrania?
- 15. W jaki sposób Perl wie, że plik jest binarny?
- 16. powiększ na stronie internetowej
- 17. Czy istnieje sposób na znalezienie nieużywanego CSS na stronie internetowej?
- 18. Określić ramę używaną na stronie internetowej zrzutu źródła
- 19. Kopiowanie CMake, jeśli oryginalny plik zmienił się
- 20. Czy powinienem dołączyć wtyczkę "bez prefiksu" na mojej stronie internetowej?
- 21. Czy mogę zapobiec zawieszeniu się telefonu na stronie internetowej?
- 22. Czy można wyświetlić plik RTF na stronie internetowej przy użyciu PHP?
- 23. Jak określić rozmiar obrazu bez jego pobierania (w całości)?
- 24. Obrazy nie ładują się na stronie internetowej
- 25. W jaki sposób skrypt bash może zapisać plik binarny bez użycia uudecode?
- 26. Czy jest jakiś sposób wyłączenia panoramowania na tabletach - stronie internetowej?
- 27. Konwertuj obraz Base64 na surowy plik binarny za pomocą Node.js
- 28. W jaki sposób programowo otwiera się pole Wybierz materiał-UI?
- 29. Czy można programowo programować obraz w Javie, systemie Android?
- 30. Obraz binarny załadowany z serwera na obraz z javascript
Nie sądzę; jeśli poprosisz o rzeczywisty plik, otrzymasz strumień oktetów. AFAIK nie ma wywołań w specyfikacji, które pozwalają na zbadanie atrybutów plików w taki sposób, jaki potrzebujesz, ale jestem ciekaw, czy jest jakiś sposób ... – Joe