Я размещаю код Python на локальном сервере с Flask и пытаюсь отправить POST-запрос с изображением. С почтальоном все отлично работает:
Нет дополнительных заголовков, кроме Content-Type (без авторизации).
Тот же запрос внутри функции javascript возвращает 400 (неверный запрос).
var form = new FormData();
form.append("image", "image089.png");
var settings = {
"async": true,
"crossDomain": true,
"url": "http://127.0.0.1:5000/croprect",
"method": "POST",
"processData": false,
"contentType": false,
"mimeType": "multipart/form-data",
"data": form
}
$.ajax(settings).done(function (response) {
console.log(response);
});
Файл "image089.png" находится в том же каталоге, что и скрипт. Эта функция переносится событием щелчка и назначается кнопке. Веб-приложение размещается локально на сервере Tomcat. Я не уверен, какая другая информация будет полезна.
Я нашел много похожих вопросов, но большинство без ответа ..
РЕДАКТИРОВАТЬ: Использование синтаксиса XHR также не работает:
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener("readystatechange", function () {
if (this.readyState === 4) {
console.log(this.responseText);
}
});
xhr.open("POST", "http://127.0.0.1:5000/croprect");
xhr.send(data);