@minnor48

VM719:1 Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 ошибка?

выдаёт ошибку после добавления fetch внизу кода
Как решить данную ошибку если я сделал преобразование в json в коде ?
const forms = document.querySelectorAll("form");
const message = {
    loading: "Загрузка",
    success: "Спасибо! скоро мы с вами свяжемся",
    failure: "Что-то пошло не так..."
};
forms.forEach(item => {
    postData(item)
});
function postData(form) {
    form.addEventListener("submit", (event) => {
        event.preventDefault();
        const statusMessage = document.createElement("div");
        statusMessage.classList.add("status");
        statusMessage.textContent = message.loading;
        form.append(statusMessage);
            const formData = new FormData(form);
         //перевод в формат json
        const object = {};
        formData.forEach(function (value, key) {
            object[key] = value;
        });
        fetch("server.php", {
            method: "POST",
            headers: {
                "Content-type": "application/json"
            }, 
            body: JSON.stringify(object)
        }) 
       .then(data => data.text())
       .then(data => {
        console.log(data);
        show(message.success);
        // удаляем сообщение через
        statusMessage.remove();
       }) .catch(()=> {
            show(message.failure);
       }) .finally(()=> {
            form.reset();
       })
   });
    function show(message) {
        const dialog = document.querySelector(".otziv");
        dialog.classList.add("hide");
        const thanks = document.createElement("div");
        thanks.classList.add("file");
        dialog.innerHTML = `
        <div class = "form_dalog">
                <div class = "otziv">${message}</div>
        </div>
        `;
        document.querySelector(".form").append(thanks);
        setTimeout(() => {
            thanks.remove();
            dialog.classList.add("show");
            dialog.classList.remove("hide");
        }, 4000);
    };
     fetch("db.json") 
    .then(data => data.json())
    .then(res => console.log(res));
};
  • Вопрос задан
  • 101 просмотр
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
С сервера возвращается не JSON.
Ответ написан
Комментировать
ThunderCat
@ThunderCat Куратор тега JavaScript
{PHP, MySql, HTML, JS, CSS} developer
Смотрим содержимое возвращаемого ответа от сервера, скорее всего там какой-то варнинг, заключенный в хтмл теги.
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
21 нояб. 2024, в 19:31
500 руб./за проект
21 нояб. 2024, в 19:28
200000 руб./за проект