Это случается только с Firefox, когда в образе base64 строка больше 1100000:
var form = document.getElementById('my_form');
$.ajax({
type: "POST",
url: "...path...",
data: new FormData( form ),
dataType: 'json',
processData: false,
contentType: false,
...
Теперь, если я отправлю его без FormData, он будет работать правильно:
$.ajax({
type: "POST",
url: "...path...",
data: { 'img_base_64' : $('input[name="img_base_64"]').val() },
dataType: 'json',
...
Одним из решений было бы отправить его, используя json в качестве второго примера. Но я предпочитаю делать это с formData, так как это очень длинная форма и она чище.
В чем может быть причина?
1- В других браузерах это работает правильно. Это происходит только в Firefox.
2- Это происходит только в изображениях base64, которые занимают более 1200000 (строка) прибл.
3- В консоли не отображается ошибка.
4- Сервер не получает запрос (он даже не отправляет его).
5- Отладка не входит в полную (ajax)