POST-запрос xmlHTTP - PullRequest
       40

POST-запрос xmlHTTP

0 голосов
/ 01 февраля 2019

Я просмотрел stackoverflow и в Google, но пока не нашел работающего решения.

Я пытаюсь отправить файл изображения с помощью запроса xmlhttp на сервер.Я нашел этот сайт: https://ptsv2.com/, чтобы проверить загрузку.

Я получаю от сервера 200 - ОК, когда я отправляю свой запрос, но он также показывает, что нет загруженных файлов (файлов: 0)

Это мой код:

var url = "https://corsanywhere.herokuapp.com/https://ptsv2.com/t/zuaco-1549007477/post";      

var base64Credentials = btoa(username+":"+password);

var xhttp = new XMLHttpRequest();
          var fd = new FormData();
          /* Add the file */ 
          fd.append("file", "img/1.png");

xhttp.open("POST", url, true);
xhttp.setRequestHeader("Authorization", "Basic " + base64Credentials);
xhttp.setRequestHeader("Content-Type", "image/png");
xhttp.send(fd);

   /* Check the response status */  
   xhttp.onreadystatechange = function() 
   {
      if (xhttp.readyState == 4 && xhttp.status == 200) 
      {
         console.log("UPLOAD SUCCESSFUL: " + xhttp.statusText);
         console.log("GET ALL: " + xhttp.getAllResponseHeaders());
      }
      else {
          console.log("UPLOAD FAILED!")
      }
   }

1 Ответ

0 голосов
/ 01 февраля 2019

В целях безопасности вы не можете установить файл вручную.Вместо этого используйте элемент ввода файла:

var xhttp = new XMLHttpRequest();
var fd = new FormData();
// fd.append("file", "img/1.png");
fd.append("file", document.getElementById('yourInput').files[0]);
...