пустой ответный текст из xmlhttprequest - PullRequest
1 голос
/ 02 июля 2011

Я загружаю файл, используя ajax, почему responseText из xmlhttprequest.responseText возвращается пустым?

Мой код:

req = new XMLHttpRequest(); 
req.file = file; 
req.addEventListener('change', changeProgress); 
 req.onreadystatechange = 
function() {
if(this.readyState == 4) {
  //etc.. 
alert(req.responseText);
}
}; 
req.open('POST','/upload',true);
req.send(file);

1 Ответ

2 голосов
/ 02 июля 2011

Загрузка файлов в объект XMLHttpRequest не поддерживается по соображениям безопасности.

РЕДАКТИРОВАТЬ: Однако это возможно при XMLHttpRequest 2

function upload(blobOrFile) {
  var xhr = new XMLHttpRequest();
  xhr.open('POST', '/server', true);
  xhr.onload = function(e) { ... };

  // Listen to the upload progress.
  var progressBar = document.querySelector('progress');
  xhr.upload.onprogress = function(e) {
    if (e.lengthComputable) {
      progressBar.value = (e.loaded / e.total) * 100;
      progressBar.textContent = progressBar.value; // Fallback for unsupported browsers.
    }
  };

  xhr.send(blobOrFile);
}

upload(new Blob(['hello world'], {type: 'text/plain'}));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...