• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Пройти авторизацию и скачать файл

  • Автор темы Mady
  • Дата начала
M

Mady

Доброго времени суток.

Проблема следующая,

Я пытаюсь пройти веб авторизацию и скачать, файл. проблема следующая если файл содержит кириллицу то url получается кодированный. и когда отрабатывает код файл не скачивания, а с латиницей все нормально.

пример кода.

HttpClient client = new HttpClient();
client.getParams().setParameter("username", "admin");
client.getParams().setParameter("password", "123456789");
HostConfiguration host = client.getHostConfiguration();
host.setHost(new URI("http://localhost:8082", true));
String fileString = "/test.nsf/7f65461bc464365e462578bf00137d8e/3cdd090b4a5588d6462578bf0047fbba/$FILE/%D0%94%D0%B0%D0%BD%D0%BD%D1%8B%D0%B5.doc";
//String fileString = "/test.nsf/7f65461bc464365e462578bf00137d8e/459f167f3c0ab7d7462578bf004913ac/$FILE/DA.doc";
GetMethod method = new GetMethod("http://192.168.89.109:8082/names.nsf?login&username=admin&password=123456789&RedirectTo="+fileString);
client.executeMethod(host, method);
byte[] bs = method.getResponseBody();
if (bs.length==0) return;
System.out.println(bs.length);
File file = new File("D:\\test.doc");
OutputStream out = new FileOutputStream(file);
out.write(bs);
out.close();
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
ну собсно, от того что это java - поведение никак не зависит ;)
возможно надо энкодить УРЛ...
например
причем имя надо указывать именно в русскими символами, а не их эскэйпами
 
M

Mady

Да дело в том что имя файла уже закодированный лотусовыми средствами
Код:
	fileName = (String) session.evaluate("@URLEncode(\"Domino\";\""+fileName+"\")").elementAt(0);
 
M

Mady

и что самое интересное

если поставить доступ на БД по умолчанию всем, те обращаться к ссылке на прямую без редиректа, то все скачивается нормально.

Вопрос как пройти авторизацию, и скачать вложения?
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
217
у вас авторизация по сессии? - если да, то нужно куки получать/подсовывать, при запросах
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!