Использование метода PUT для обновления существующей статьи во внешней базе данных

Короче говоря, мы используем restdb.io в школьном проекте, чтобы попрактиковаться в наших "базовых" навыках. Предполагается, что мы создадим простой веб-сайт, который позволит нам публиковать новые статьи, удалять существующие статьи и (моя основная задача) редактировать существующие статьи. Мы используем POST метод для новых статей и PUT метод для редактирования. Потому что я не понимаю природу PUT метод, я просто использую его так же, как POST метод

    document.querySelector('button[name="save-edit"]').addEventListener("click", e => {
        e.preventDefault();
        let userTitle = document.querySelector('input[name="title"]');
        let userDate = document.querySelector('input[type="date"]');
        let userContent = document.querySelector('textarea[name="content"]');
        let data = {
            title: userTitle.value,
            content: userContent.value,
            date: userDate.value
        };


        let postData = JSON.stringify(articleData);
        fetch("https://someRandomDatabase.restdb.io/rest/articles/" + articleData._id, {
                method: "put",
                headers: myHeaders,
                body: postData
            })
            .then(d => d.json())
            .then(t => {
                console.log(t);
                document.querySelector("#modal").style.left = "100vw";

                document.querySelector('input[name="title"]').value = "";
                document.querySelector('input[type="date"]').value = "";
                document.querySelector('textarea[name="content"]').value = "";
                showArticle(data);
                document.querySelector('button[name="save-edit"]').disabled = true;
            });
    });
});

Это весь кусок кода, который заботится о редактировании UX-функции сайта (основная часть начинается с извлечения данных). Теперь, потому что у меня не так много теории относительно PUT и все статьи, которые я нашел в Интернете, просто POST против PUTЯ не уверен, где это неправильно. В своем текущем состоянии он просто добавляет новую статью в базу данных (так в основном так же, как POST метод) вместо того, чтобы редактировать тот, на который я нажал.

PS: этот кусок кода на самом деле внутри функции под названием showArticle(), который посвящен публикации новой статьи. Причина, по которой я вставил, заключается в том, что я передаю идентификатор статьи (таким образом, содержание)

0 ответов

Другие вопросы по тегам