Передача cookies и HTTP-заголовков при закачке файлов макросом DOWNLOADFILE

Тема в разделе "Скачивание картинок и файлов", создана пользователем serg12, 6 фев 2017.

  1. serg12

    serg12 New Member Пользователи

    Регистрация:
    6 фев 2017
    Сообщения:
    4
    Здравствуйте.

    Как передавать cookies при закачке файлов макросом DOWNLOADFILE?

    У меня сложилась такая ситуация: если открыть окно авторизации ctrl+k, авторизоваться на сайте и вставить в адресную строку адрес файла, то файл закачивается. Если передать cookies и закачивать этот же файл макросом DOWNLOADFILE, то появляется ошибка “Программе не удалось загрузить файл (wrong content type (text/html))”.

    Если убрать в настройках макроса флажок “поддерживать редиректы”, то появляется ошибка “Программе не удалось загрузить файл (HTTP/1.1 302 FOUND)”.

    Эта ошибка связана с тем, что при загрузке файла сайт проверяет авторизован ли пользователь, пытающийся скачать файл, и если он не авторизован, то производится редирект пользователя на форму авторизации.
     
    Последнее редактирование: 6 фев 2017
  2. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Указать нужные HTTP-заголовки можно в окне настроек макроса DOWNLOADFILE (shift+ctrl+l)

    2017-02-06_14-30-00.png

    Судя по предоставленной вами ошибке нужно устанавливать не Cookie, а Accept и/или Content-Type:
    Код:
    Accept: image/*;q=0.8,*/*;q=0.5
    Content-Type: image/png
    С уважением к вам, Сергей.
     
  3. serg12

    serg12 New Member Пользователи

    Регистрация:
    6 фев 2017
    Сообщения:
    4
    Я качаю не картинку, а архив rar. Добавление в заголовок cookies и строки ниже не помогло:

    Content-Type: application/x-rar-compressed

    Вставка указанных вами заголовков тоже не помогла.
     
  4. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    В моем предыдущем ответе указано, что нужно установить заголовок Accept. Возьмите его значение из плагина LiveHTTPHeaders (для Firefox).
     
  5. serg12

    serg12 New Member Пользователи

    Регистрация:
    6 фев 2017
    Сообщения:
    4
    Вставил заголовок ниже из плагина. Не помогло.

    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

    Заголовка Content-Type там не было.
     
  6. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Зачем вставлять заголовок не от того запроса. Вставьте корректный заголовок. В предоставленном вами заголовке нет ни одного упоминания о rar.
     
  7. serg12

    serg12 New Member Пользователи

    Регистрация:
    6 фев 2017
    Сообщения:
    4
    Именно этот заголовок был в запросе на файл с архивом. Это не прямая ссылка на файл, а ссылка на страницу, которая проверяет авторизован ли пользователь.
     
  8. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Я вам сказал, как устанавливаются HTTP-заголовки. Теперь занимаюсь гаданием, нужно изучать конкретный сайт и подбирать решение. Этим я не занимаюсь, этим занимаются специалисты по настройке за деньги. Можете обратиться к ним.

    Если у вас есть еще вопросы по функционалу программы, пожалуйста, задавайте.
     
  9. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Лучше ссылку на файл предоставьте, попробую.
     

Поделиться этой страницей