J'utilise le code suivant pour télécharger un fichier volumineux (mais inférieur à 62 Mo) vers OneDrive à l'aide de l'API Microsoft Graph.API XMLHttpRequest to Microsoft Graph abandonnée dans IE 11
let req = new XMLHttpRequest();
req.open("PUT", url, true);
req.setRequestHeader("Authorization", "Bearer " + this.authProvider.tokens.graph);
req.setRequestHeader("Content-Length", file.size.toString());
req.setRequestHeader("Content-Range", "bytes 0-" + (file.size - 1).toString() + "/" + file.size.toString());
req.upload.onprogress = (e) => {
let progress = Math.floor(e.loaded/e.total * 100);
console.log(progress);
};
req.upload.onerror = (e: any) => {
console.log("error");
};
req.onload = (e) => {
console.log("done");
};
req.send(buffer);
Cela va par l'amende de Chrome (dernière version à ce jour), mais après la création de la session, le téléchargement échoue sur l'url de retour de la demande create session. Je reçois l'erreur SCRIPT7002: XMLHttpRequest: Network Error 0x80070005, Access is denied.
dans la console IE 11 et dans l'onglet réseau, je vois l'état de la demande étant aborted
et l'initiateur était une demande CORS Preflight
. Selon d'autres tests, je pense que l'erreur provient de req.open("PUT", url, true);
ligne.
-Update-
Sa fait la demande CORS prévol (OPTIONS) à l'URL de retour qui est en fait un échec qui obtient par Chrome très bien.
Non. Cela ne résout pas le problème. – lbrahim