Как сделать запрос на получение файла?

Рейтинг: 0Ответов: 1Опубликовано: 21.11.2014

На нужной мне странице есть такая ссылка, при нажатии на нее выдается запрос на сохранение файла. Можно ли как-то из java-кода получить этот файл?

Ссылка:

<a id="ctl00_BXContent_lbCSV"     href="#">CSV (разделители - точка с запятой)</a>

Код JavaScript:

var theForm = document.forms['aspnetForm'];
if (!theForm) {
    theForm = document.aspnetForm;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}

Ответы

▲ 1

Как выглядит форма?

В простом случае, из приведённого кода следует, что отправляется форма, в которой добавляются поля __EVENTTARGET = 'ctl00$BXContent$lbCSV' и __EVENTARGUMENT = '', а в ответ отдаётся искомый файл с заголовком типа Content-Disposition: attachment; filename="filename.csv".

Чтобы обрабатывать этот файл в JS, наверное, можно вместо отправки формы, запросить ajax'ом тот же URL, и передать те же данные.