Я использую valums fileuploader в веб-приложении asp.net. Он отлично работает с фактическими загрузками как таковыми. Но проверка состояния ошибки не работает должным образом в Chrome и FF. Загрузчик указывает на обработчик с именем fileupload.ashx, который проверяет, существует ли файл с таким именем. Код C # приведен ниже ...
if (File.Exists(Path.Combine(path, fileName)))
{
returnJson = "{success:false, error:'Duplicate filename'}";
context.Response.ContentType = "text/plain";
context.Response.Write(returnJson);
return;
}
Я ожидал сообщения об ошибке выше в свойстве result.error. После некоторой отладки JavaScript я обнаружил, что этот код хорошо работает для IE8, но не в Chrome и FF. Xhr responseText содержит пустую строку в случае сбоя передачи.
Ниже приведен фрагмент JavaScript из valums fileuploader.js ...
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
self._onComplete(id, xhr);
}
};
Удивительно, но responseText правильно возвращается даже в Chrome и FF, когда загрузка прошла успешно. Любая помощь будет принята с благодарностью.