Лучший способ вернуть пользовательский файл, AJAX или Forms? - PullRequest
1 голос
/ 28 марта 2010

Я новичок в веб-программировании, поэтому мне нужна помощь.

Я пишу специальное приложение для создания файлов для моего сайта. Пользователь заходит на страницу, нажимает на некоторые различные опции и устанавливает некоторые флажки и нажимает ссылку «скачать сейчас».

У меня есть PHP-бэкэнд, который будет обрабатывать отправку и генерировать PDF-файл. После того, как пользователь нажмет на ссылку для скачивания, я хочу, чтобы загрузка началась так же, как и для любой статической ссылки.

Мой вопрос: каков наилучший способ сделать это? Из моего ограниченного понимания у меня есть выбор между использованием AJAX или каким-либо образом с помощью форм для отправки данных. Каковы преимущества / недостатки каждого? У кого-нибудь есть хорошие ссылки на примеры?

Спасибо

Ответы [ 3 ]

1 голос
/ 28 марта 2010

На самом деле вы не можете скачать PDF через XMLHttpRequest (AJAX).

Как правило, вы должны просто перенаправить пользователя на ресурс, который будет генерировать PDF-файл с правильным MIME-типом , а затем оставить его браузеру, чтобы выяснить, как с ним обращаться.

1 голос
/ 28 марта 2010

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

Вместо этого вы должны создать обычную форму, а бэкэнд PHP должен загружать файл при отправке формы.

0 голосов
/ 28 марта 2010

Просто используйте форму. Аякс не дает никаких преимуществ и много осложнений в этих условиях. (Вы можете использовать его, хотя вам придется использовать не-XHR-реализацию, но это будет бессмысленно)

...