Имеется фронтенд на JS и бэкенд на PHP. Находятся на разных доменах, общаются через API
Для обычных данных удалось настроить CORS, всё проходит ок.
Проблема возникает с загрузкой файлов. Сам по себе Ajax запрос проходит успешно, но файл на бэкенд не приходит.
На фронте
function upload(file) {
var xhr = new XMLHttpRequest();
xhr.onload = xhr.onerror = function (x) {
console.log(x.target.response); // выводит [][][]
};
xhr.open("POST", "http://sitename", true);
xhr.send(file);
}
// висит на инпуте
function inputOnChange(e) {
upload(e.target.files[0]);
}
На бэкенде
header('Access-Control-Allow-Origin: http://localhost:3000');
header('Access-Control-Allow-Headers: content-type');
echo json_encode($_GET);
echo json_encode($_POST);
echo json_encode($_FILES);
Все массивы пустые. Что я делаю не так?