Tôi có một liên kết mà tôi muốn thêm vào ứng dụng đơn javascript (Marionette/Backbone) của tôi sẽ tải xuống tệp Excel vào ổ đĩa cục bộ của người dùng thông qua lưu tệp của trình duyệt. Một yêu cầu HTTP điển hình sẽ là:Tải xuống liên kết anchor với tiêu đề ủy quyền
GET /api/v1/objects/?format=xls HTTP/1.1
Authorization: ApiKey username:apikey
Host: api.example.com
Connection: close
User-Agent: Paw 2.0.5 (Macintosh; Mac OS X 10.9.2; en_US)
Content-Length: 0
Những kết quả trong các phản ứng đặc trưng sau:
HTTP/1.1 200 OK
Server: gunicorn/18.0
Date: Tue, 06 May 2014 03:09:02 GMT
Connection: close
Transfer-Encoding: chunked
Vary: Accept
Content-Type: application/vnd.ms-excel
Content-Disposition: attachment; filename="filename.xls"
Cache-Control: no-cache
<<CONTENT HERE>>>
Tôi muốn làm điều này với một yếu tố neo đơn giản tạo kiểu như một nút vì điều này sẽ gọi máy lưu trữ tệp của trình duyệt. Một cái gì đó tương tự như:
<a href="/api/v1/objects/?format=xls" class="btn btn-primary pull-right">Download to Excel file</a>
Tôi không rõ làm cách nào để nhận tiêu đề ủy quyền khi thực hiện điều này thông qua liên kết anchor - hoặc có lẽ tôi không nghĩ và có cách tốt hơn.
Chương trình phụ trợ của tôi là ứng dụng web Django sử dụng Tastypie.
Tôi nghi ngờ đây là trường hợp. Chỉ muốn chắc chắn. Tôi đoán tôi sẽ rơi trở lại trên một số loại sắp xếp cookie phiên tương tự như những gì bạn đang đề xuất. Cảm ơn! – Erik
Có thể với FileAPI: http://stackoverflow.com/a/24523253/3703604 – Robert