Узнать размер файла, который хочешь скачать из нэта...

Тема в разделе "WASM.HEAP", создана пользователем EvilsInterrupt, 31 дек 2005.

  1. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    День добрый!



    Как можно узнать размер файла, не нажав на кнопку "Скачать"?



    зы:

    Может туплю, но раньшее когда инэт был тоненьким не задавался таким вопросом
     
  2. B_108

    B_108 New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    62
    Послать запрос не GET,

    а HEAD,

    тогда сервак выдаст только шапку ответа,

    без тела,

    и если там окажется параметр

    Content-length то ты узнаешь размер %)
     
  3. Nothing

    Nothing New Member

    Публикаций:
    0
    Регистрация:
    4 авг 2003
    Сообщения:
    139
    Адрес:
    Russia
    В общем случае - увы никак.

    Сервер может сообщить размер в поле content-length, но он не обязан этого делать. Сейчас много сайтов использют всякие обработчики для выдачи html (php/asp/perl...), они как правило никогда не знают размер страницы заранее, т.к. выдают ее в поток прямо по ходу парсинга текста. Готовые файлы, это другое дело, но даже и здесь есть подлые сервера, отдающие их как attachment'ы и посему не указывающие их размер ни в ответ на GET ни в ответ на HEAD. :-(
     
  4. Guest

    Guest Guest

    Публикаций:
    0
    Помоему лучший способ это принимать все что присылает сервер в файл, до FD_CLOSE, затем парсить уже файл
     
  5. SDragon

    SDragon New Member

    Публикаций:
    0
    Регистрация:
    6 июн 2005
    Сообщения:
    133
    Адрес:
    Siberia
  6. Guest

    Guest Guest

    Публикаций:
    0
    SDragon

    Эта программа не годится для определения размера документа. Она сканирует полученный код на content-length,

    а если используется http1.1, и метод Transfer-Encoding: chunked, то она уже не пашет, потому идеальный вариант, еще раз повторюсь - все что присылает сервер писать в фйл, а затем анализировать документ, и испойзовать лучше http 1.0, чтобы сервер не присылал документ по блокам (Transfer-Encoding: chunked)
     
  7. EvilsInterrupt

    EvilsInterrupt Постигающий азы дзена

    Публикаций:
    0
    Регистрация:
    28 окт 2003
    Сообщения:
    2.428
    Адрес:
    Russia
    Ваши мысли для меня полезны,но я имел ввиду следущую ситуацию:

    Юзер имеет ADSL и унего осталось 20 метров по аб.плате, а на более у него нет денег и тут он увидел что на сайте www.wasm.ru выложили оффлайновую версию(ну вдруг хранитель сайта все таки сжалится) и он незнает сколько весит wasm.offline.zip!





    Как бы ему заранее, не нажав "Скачать" узнать сколько весит wasm.offline.zip? Причем юзер, программить не умеет и ищет стандартные виндовые фишки, которые бы ему помогли
     
  8. Sharp

    Sharp New Member

    Публикаций:
    0
    Регистрация:
    1 авг 2003
    Сообщения:
    143
    Адрес:
    Ukraine
    Стандартная виндовая фишка - в IE нажать на ссылке к файлу, откроется окно "открыть-сохранить-отмена" и в нем написано "имя, тип, с". И в типе, если IE смог определить размер, написано, сколько весит файл.