Câu hỏi của tôi cũng tương tự như Download and open pdf file using Ajaxgọi JQuery Ajax cho file PDF download
Nhưng không giống hệt nhau, lý do tôi muốn có một ajax JQuery là tập tin của tôi đang được tạo ra tự động từ các dữ liệu đó sẽ được lấy từ cùng một trang.
Vì vậy, về cơ bản tôi có một đối tượng Json cần được gửi đến máy chủ sẽ tự động tạo tệp và gửi lại cho trình duyệt.
Tôi không muốn sử dụng chuỗi truy vấn trên một neo với đối tượng Json của tôi stringyfied, vì tôi nghĩ rằng đó sẽ là mối đe dọa tiềm năng vì chuỗi truy vấn có giới hạn ký tự (tôi có ở đây không?).
Vui lòng cho tôi biết Nếu quy trình làm việc của tôi là đúng hoặc tôi có thể đạt được điều tương tự bằng cách sử dụng luồng khác.
Darin: bạn nghĩ gì về việc tạo tệp trên máy chủ bằng yêu cầu AJAX GET? Điều này cho phép tôi nắm bắt bất kỳ lỗi nào xảy ra trên máy chủ trong quá trình tạo tệp trong cuộc gọi lại không thành công và hiển thị nó cho người dùng. Nếu thành công, tôi sau đó chuyển tên tập tin vào thành công ajax callback và làm 'window.location = server \ folder \ filename'. Tôi đang làm việc với ASP.NET Web API ở đây. –
OP được yêu cầu cụ thể cho ajax. Đây là một sự lãng phí băng thông. – CodeWarrior
@OmarPadilla, bạn không thể tải xuống tệp bằng AJAX cho ứng dụng khách.Nhưng ngay cả khi đó là có thể bạn sẽ lãng phí chính xác cùng một số lượng băng thông như thể bạn đã sử dụng một liên kết trực tiếp để tải xuống tệp. Lý do đơn giản cho điều đó là trong cả hai trường hợp, bạn đang gọi cùng một điểm cuối trên máy chủ đang trả về cùng một tệp. Và đừng bị lừa khi nghĩ rằng nếu bạn không sử dụng AJAX, trang hiện tại sẽ * tải lại *. Không có yêu cầu bổ sung nào khác ngoài yêu cầu bổ sung cho hành động điều khiển sẽ truyền tệp. –