Ich muss eine Datei herunterladen, die 'Content-Disposition' Header von Server auf "attachment
" festgelegt wird. Ich benutze jQuery.ajax
für GET
und bei erfolgreicher Einstellung versteckt iframe
src
zu url
, die mir ein Pop-up für den Dateidownload gibt. Und es funktioniert in allen Browsern. Jetzt möchte ich eine benutzerdefinierte Anfrage Header zu verschlüsseln Datei vor GET & Download ändern. Ich habe jQuery.ajax
vor-Anfrage Rückruf-Funktion beforeSend
dafür verwendet.So legen Sie Anforderungsheader fest, bevor es in einem iframe geladen wird
Ich bin in der Lage, meine verschlüsselte Datei, die ich in Firebug beobachten kann, aber meine iframe
zeigt immer noch nicht verschlüsselte Datei zum Download. Nach der Inspektion kann ich sagen, dass iframe
ein neues GET anfordern.
-Code
$.ajax({
url: "/tutorial.text",
beforeSend: function(xhr) { xhr.setRequestHeader("PASSWORD_HEADER", userPwd); },
success: function() { $("#Hidden_iframe").attr("src", this.url); }
});
Und das funktioniert gut auf Internet Explorer. Wie kann ich iframe zwingen, die verfügbare Ressource zu verwenden, anstatt ein neues GET anzufordern. Oder wie kann ich setRequestHeader in Iframe oder brauche ich wirklich eine jQuery.Ajax
für diese Aufgabe gibt es die beste Möglichkeit zum Download der Content-Disposition-Header zu Anlage Dateien direkt vom Server festgelegt ist.
Haben Sie jemals eine Antwort darauf erhalten? Ich versuche, etwas ähnliches zu tun ... Laden Sie eine Datei über einen Ajax-Anruf herunter, aber der Download erfordert Authentifizierung und ist domänenübergreifend .... –