Задать вопрос
Delgus
@Delgus

Почему 408 ошибка при отправке на сервер?

$(".fileinput-upload-button").click(function(){
     var reader = new FileReader();
     reader.readAsDataURL(uploadImg);
     reader.onloadend =  () => {
         let fd = new FormData();
         fd.set("data", reader.result)
         fd.set("name", uploadImg.name);
         $.ajax({
            method:"post",
            data: fd,
            url:"/shop/product/ajax-save?id=" + $product->id,
            contentType: false,
            processData: false,
            success: function(data) {
                console.log(data);
            }
     });
     }
                    
     return false;
 });


Получаю 408 ошибку? Почему?

Код на сервере
public function actionAjaxSave($id)
 {
        var_dump($_FILES);
        var_dump($_POST);die;
}


PS: Если я в js коде поменяю reader.result на "lalalalalal", то все работает. но если видимо длинная строка то какой то баг. браузер Firefox
  • Вопрос задан
  • 469 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
myks92
@myks92 Куратор тега PHP
Нашёл решение — пометь вопрос ответом!
408 Request Timeout — время ожидания сервером передачи от клиента истекло. Клиент может повторить аналогичный предыдущему запрос в любое время. Например, такая ситуация может возникнуть при загрузке на сервер объёмного файла методом POST или PUT. В какой-то момент передачи источник данных перестал отвечать, например, из-за повреждения компакт-диска или потери связи с другим компьютером в локальной сети. Пока клиент ничего не передаёт, ожидая от него ответа, соединение с сервером держится. Через некоторое время сервер может закрыть соединение со своей стороны, чтобы дать возможность другим клиентам сделать запрос. Этот ответ не возвращается, когда клиент принудительно остановил передачу по команде пользователя или соединение прервалось по каким-то иным причинам, так как ответ уже послать невозможно.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽