Получение имени файла из ссылки

Тема в разделе "WASM.NETWORKS", создана пользователем MSoft, 30 янв 2007.

  1. MSoft

    MSoft New Member

    Публикаций:
    0
    Регистрация:
    16 дек 2006
    Сообщения:
    2.854
    Приветствую.
    Имеется ссылка на файл в виде http:\\some.server.com\xxxx, где xxxx - четырехзначное число. Т.е. в ссылке не указывается прямо имя файла. Тем не менее качалки вроде Reget как-то его узнают. С пом. каких API можно получить имя файла на сервере?

    P.S.: т.к. протокол может быть не обязательно http, но и ftp или еще что-нибудь, то я использую ф-ии типа InternetOpen... и т.д. (т.е. не обрабатываю протокол HTTP вручную).
     
  2. Cr4sh

    Cr4sh New Member

    Публикаций:
    0
    Регистрация:
    17 апр 2006
    Сообщения:
    668
    при отправке запроса на http:\\some.server.com\xxxx сервак просто пишет в заголовок ответного пакета строку location: blablabla, которая перенаправляет браузеры, качалки итд. на реально лежащий на сервере файл... для wininet такое перенаправление прозрачно, но я думаю, что можно заюзать ф-цию HttpQueryInfo для получения http-заголовка ответа сервера, и дальше пропарсив его выдрать оттуда это самое имя
     
  3. Proteus

    Proteus Member

    Публикаций:
    0
    Регистрация:
    19 июн 2004
    Сообщения:
    344
    Адрес:
    Russia
    Он же помойму содержимое запроса показывает. Там очень трудно не заметить как он его узнаёт...
     
  4. riban

    riban New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2005
    Сообщения:
    51
    Адрес:
    Russia
    ловишь 302ю в ответе: