2013-10-11 11 views
5

Przesyłam pliki według kodu javascript na serwer. Zauważyłem, że różne przeglądarki wysyłają bajty o różnych rozmiarach. Jak widać na poniższych obrazkach, Internet Explorer wysyła małe bajty, ale Chrome i Firefox wysyłają większe bajty.Dlaczego przesyłanie Javascript wielkości porcji zmienia się w przeglądarce?

  1. Przesyłam pliki z XMLHttpRequest. Czy mogę ustawić standardowe bajty dla wszystkich przeglądarek na ? Ponieważ różny przepływ wielkości powoduje błędy w niektórych przeglądarkach. Błąd HTTP wynosi 404,13.
  2. Skonfigurowałem plik web.config jako <requestLimits maxAllowedContentLength="1073741824"> (1 GB), ale kiedy załaduję duży plik (500 Mb) w przeglądarce Firefox i Chrome, serwer nadaje system.OutOfMemoryException. Internet Explorer działa poprawnie.

Firefox

enter image description here

Internet Explorer

enter image description here

Chrome

enter image description here

+1

duplikat? http://stackoverflow.com/questions/19332692/does-javascript-features-change-by-browser –

Odpowiedz

1

Nie wiem, dlaczego jest inaczej, ale można zmieniać swoje zachowanie w zależności od przeglądarki (w przeciwieństwie do standaryzacji jak prosiłeś w pytaniu).

Jako przykład można posłużyć się kodem w narzędziu do ładowania myszy.

Od: https://github.com/juanparati/MooUpload/blob/master/Source/MooUpload.js

// Get slice method 
    if (file.mozSlice)   // Mozilla based 
     chunk = file.mozSlice(start, total) 
    else if (file.webkitSlice) // Chrome, Safari, Konqueror and webkit based 
     chunk = file.webkitSlice(start, total); 
    else      // Opera and other standards browsers 
     chunk = file.slice(start, total) 
Powiązane problemy