Ho un collegamento che vorrei aggiungere alla mia applicazione javascript (Marionette/Backbone) a pagina singola che scaricherà un file Excel nell'unità locale dell'utente tramite il salvataggio del file del browser. Una tipica richiesta HTTP sarebbe:Download link di ancoraggio con header di autorizzazione
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
che si traduce nel seguente risposta tipica:
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>>>
mi piacerebbe fare questo con un semplice elemento di ancoraggio in stile come un pulsante come questo sarebbe invocare la macchine per l'archiviazione di file del browser. Qualcosa di simile a:
<a href="/api/v1/objects/?format=xls" class="btn btn-primary pull-right">Download to Excel file</a>
io non sono chiare su come ottenere l'intestazione di autorizzazione per essere passato quando si fa questo tramite un collegamento ancoraggio - o forse sto solo non pensare e non c'è un modo migliore.
Il mio back-end è un'app di web Django che utilizza Tastypie.
Sospettavo che fosse così. Volevo solo essere sicuro. Credo che ricadratteremo su una sorta di accordo sui cookie di sessione simile a quello che stai suggerendo. Grazie! – Erik
È possibile con FileAPI: http://stackoverflow.com/a/24523253/3703604 – Robert