Je suis certes un débutant AngularJS mais je ne trouve pas pourquoi ce code fonctionne dans Chrome et Firefox mais donne "Access is denied"
Dans la console javascript avec IE 11.
J'ai besoin d'afficher un PDF via un appel authentifié REST. Idéalement, cela devrait s'afficher dans une fenêtre contextuelle (aperçu)).
Jusqu'à présent, le code ressemble à ceci:
$http.post( url, payload, {
headers : {
"Authorization": token
},
responseType: "arraybuffer"
}).success(function ( data ) {
var file = new Blob( [ data ], { type: 'application/pdf' });
var fileURL = URL.createObjectURL( file );
window.open( fileURL );
}
La window.open()
donne le message "access is denied"
Pour IE11, mais fonctionne dans Chrome et Firefox. J'ai essayé de passer à window.location()
, et j'ai obtenu la même erreur.
Ce n'est pas un problème inter-domaines (tout est dans le même domaine foo.net).
Enregistrement du texte dans un fichier local dans Internet Explorer 1
Il ressemble à IE bloque window.open sur les blobs, mais a implémenté leurs propres fonctions pour ouvrir et enregistrer les blobs. Essayez plutôt
if (window.navigator && window.navigator.msSaveOrOpenBlob) {
window.navigator.msSaveOrOpenBlob(blob);
}
else {
var objectUrl = URL.createObjectURL(blob);
window.open(objectUrl);
}