Что-то ExtJS всё больше печалит в качестве выбранного фреймворка. Вероятно, я не умею его готовить. ОК.
Создал простую форму: Комбобокс, Файл и Сабмит-кнопка.
var form = this.lookupReference('myform').getForm();
if (form.isValid()) {
form.submit({
url: '/Services/Service.svc/Upload',
success: function (form, action) { debugger; },
failure: function (form, action) { debugger; }
});
}
От сервера приходит
КОРРЕКТНЫЙ ответ. 200 и нужный JSON. Но!
1.
Хром 48.0.2564.
В процессе обработки выдаёт:
Resource interpreted as Document but transferred with MIME type application/json: "https://sdsdw.com/Services/Service.svc/Upload
При этом в заголовках отправленных данных я чётко вижу:
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarylABtsdmuqaDjyzUd
В итоге заходит в блок failure, где я вижу корректный ответ от веб-сервиса:
action.response
Object {responseText: "{"FileLength":9426,"FilePath":"BlaBla"}", responseXML: document, status: 200}
2.
ИЕ11
Если с Хромом ещё как-то можно жить, то здесь всё ещё более печально. В процессе загрузки формы:
SCRIPT5007: Не удалось получить свойство "keys" ссылки, значение которой не определено или является NULL
Файл: bootstrap.js, строка: 105, столбец: 9
После сабмита:
SCRIPT65535: Недопустимый вызывающий объект
Файл: javascript:<URI>, строка: 1, столбец: 1
Не заходит ни в блок Саксесс, ни в Фэил, а просто тупо предлагает мне скачать json-файл, в котором, опять же, корректные данные от сервера.
Я даже не знаю, господа... Если ещё какие сведения нужны для валидации проблемы, постараюсь предоставить.
А особенно грустно, что гугление по проблемам\кейсам ExtJS в 90% случаев выдаёт в основном какие-то плесневелые ответы с их сапорт-форума, датированные прошлым десятилетием.