2012-05-14 35 views
8

Khi người dùng nhấp vào liên kết trong ứng dụng Ruby on Rails của tôi, tệp PDF được tạo ở chế độ nền.Tải xuống pdf không đồng bộ

Ứng dụng đang bỏ phiếu cho máy chủ biết khi nào tệp PDF đã sẵn sàng và sau đó yêu cầu người dùng tải xuống như thể anh đã nhấp vào liên kết PDF đã tồn tại.

Chúng tôi thực hiện việc này với ẩn iframe và thay đổi thuộc tính src khi tệp PDF đã sẵn sàng.

Trong khi nó hoạt động trên Firefox (có một cửa sổ bật lên gốc để tải xuống tệp), nó không có trên safari/chrome. Làm thế nào tôi nên làm điều này? Tôi đã nhìn thấy có một tiêu đề HTTP Content-Disposition, nhưng tệp PDF được lưu trữ trên S3, vì vậy tôi không nghĩ rằng tôi có thể sử dụng phương pháp đó.

Trả lời

3

Bạn cần sử dụng tiêu đề phản hồi Content-Disposition = 'attachment';.

Tôi không hoàn toàn lên đến chơi với S3 vì vậy hãy cho tôi biết nếu câu trả lời này là không hoàn toàn đúng nhưng có vẻ như bạn thể thiết lập các tiêu đề nội dung trong URL yêu cầu bây giờ, xem ví dụ here.

+0

Thật vậy, tôi và dường như làm điều này. Chỉ cần tích hợp nó với kẹp giấy/sương mù ngay bây giờ! – ksol

Các vấn đề liên quan