3
최근에 AJAX 요청으로하는 경우를 제외하고는 루비 온 레일에서 단일 HTTP 요청으로 둘 이상의 파일을 다운로드 할 수 없다는 것을 알게되었습니다. 나는 지금 그것을하는 방법을 이해하려고 애 쓰고있다.AJAX 요청으로 파일 데이터 다운로드 - ruby on 레일스 3
나는 PDF 렌더링 내 컨트롤러에서 작업을 한 후
def download_quote
pdf = QuotesPdf.new(params)
send_data pdf.render, filename: "foo.pdf",
type: "application/pdf",
disposition: "download"
end
내 HTML보기에서 버튼이 SEND_DATA 사용 (I 3 레일에 루비와 PDF 크리에이터로 새우를 사용하고 있습니다) 그
// AJAX, download
function ajaxRequest(){
$.ajax({
type: 'POST',
url: '/download_quote/126',
success: function(data){
alert(data);
}
});
return false;
}
$("#mydownload").click(ajaxRequest);
몇 초 PDF 렌더링 걸린 후 나는 "#mydownload"을 클릭
, 나는 내부 데이터, 내 생각, 모든 PDF 파일로 성공적으로 alertbox를받을이 작업 JScript 코드가 있습니다.질문 : 어떻게하면 pdf 파일의 데이터를 변환하고 자동으로 다운로드 할 수 있습니까?
글쎄, 내가 확인합니다! 어쨌든 나는 항상 오류없이 지금까지 다운로드를 사용 ...하지만 어떻게 자바 스크립트 측면을 바꿀 수 있습니까? –
당신이 뭘 하려는지는 잘 모르겠지만 그 다운로드는 유효한 콘텐츠 처리가 아니라는 것을 지적하고 싶었습니다. 인라인 또는 첨부 파일이어야합니다. 두 가지 방법 모두 다르게 작동하는지 확인할 수 있습니다. 인라인은 파일을 다운로드하고 즉시 브라우저에 표시하려고합니다. 첨부 파일을 저장하거나 열 것인지 묻는 메시지가 나타납니다. 당신이 AJAX 콜을하고 있기 때문에 어떻게 작용할 지 확신하지 못합니다. –
@RiccardoNeri이 비슷한 질문을 참조하십시오 : [http://stackoverflow.com/questions/1999607/download-and-open-pdf-file-using-ajax](http://stackoverflow.com/questions/1999607/download- and-open-pdf-file-using-ajax) –