![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 7.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam, jakiś czas temu postanowiłem zmodernizować jeden ze swoich serwisów, który umożliwia m.in. pobieranie plików ZIP (z różna zawartością - pliki html, obrazki itp). Wcześniej umieszczałem na stronie link z pełną ścieżką do pliku i problemu nie było. Teraz jednak ścieżka i nazwa pliku musi pozostać nieznana dla użytkownika. Dlatego zdecydowałem się na napisanie prostego downloadera. Mam jednak z nim pewne problemy. Poniżej zamieszczam kod 3 funkcji do pobierania pliku i właściwie żadna nie działa tak jak powinna. Jeżeli ktoś ma jakieś pomysły co jest z nimi nie tak lub ma własna funkcje która działa w 100% to prosze o pomoc.
Pierwsza funkcja i trzecia mają ten sam problem; zdarzają się sytuacje, że niektórzy użytkownicy nie mogą rozpakować żadnego z pobranych plików. Pojawia się informacja, że dane archiwum może być uszkodzone itp. Ponowne pobranie wtedy tez nie pomaga. Problem ten dotyczy niewielkiej cześci użytkowników no ale jednak. Z rozmów z tymi osobami wynika, że jest to niezależne od przeglądarki. Ja testowałem to u siebie na 3 komputerach i pod wszystkimi najpopularniejszymi przegladarkami w różnych wersjach i wszystko działa. Znajomym też. Tak jak napisałem dotyczy to tylko niewielkiej grupy osób, ale nie moge znaleźć jakiejś wspólnej cechy. Druga funkcja działa najgorzej. Testy wykazały, że w Operze lub w IE (nie pamiętam już) po rozpakowaniu otrzymujemy tylko jeden plik bez rozszeżenia zamiast normalnych katalogów i plików. Z eksperymentów doszedłem do wniosku, że powodem jest linia określająca typ zawartości Content-Type: application/zip. Jeżeli we funkcji 1 i 3 zastąpie application/force-download application/zip to one też zaczną sprawiać ten sam problem. Dotyczy to też odwrotnej sytuacji, gdy w funkcji 2 zamienie application/zip na application/force-download to ona zacznie działać poprawnie (wystąpi wtedy najprawdopodobniej problem z poprzedniego akapitu dotyczący funkcji 1 i 3).
Ma ktoś jakieś pomysły?? |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 06:48 |