Day 91 : #100DaysofCode - FETCH를 사용하여 POST 및 PATCH 요청을 했습니다.
먼저 내 데이터베이스의 모든 항목을 가져와 페이지에 추가하기 위해 GET 요청을 했습니다.
function getAllToys(){
return fetch("http://localhost:3000/toys")
.then(function(response) {
return response.json();
})
.then(function(object) {
// console.log(object);
const characters = object
characters.forEach(character =>{
const collection = document.querySelector('#toy-collection')
// console.log(character)
let div = document.createElement('div');
div.className = "card"
div.innerHTML = `<h2>${character.name}</h2><br>
<img src=${character.image} class="toy-avatar" /><br><p>Likes: ${character.likes}</p><button class="like-btn">Like <3</button><br>`
// console.log(collection, "this is collection")
collection.appendChild(div)
// div.append(object.name)
})
// document.body.innerHTML = object.id
like()
})
DOMContentLoaded 때 getAllToys() 함수를 호출했습니다.
document.addEventListener("DOMContentLoaded", () => {
getAllToys();
}
그런 다음 데이터베이스에 추가할 수 있기를 원했기 때문에 폼을 만들고 폼에 주어진 입력을 사용하고 내가
submitData
라는 이름의 함수에서 사용할 이벤트 리스너를 폼에 추가했습니다. const form = document.querySelector("form.add-toy-form");
form.addEventListener("submit", (e) => {
event.preventDefault()
let input = document.querySelector('input.input-text')
let image = document.querySelector('input.input-text-image')
submitData(input.value, image.value)
});
submitData
함수는 사용자가 양식에 입력한 이름과 이미지인 두 개의 인수를 사용합니다. 그런 다음 가져오기 요청으로 전달되어야 하는 게시 요청에 대해 configObj
라는 변수를 만들었습니다.function submitData(name, image){
let formData = {
name: name,
image: image,
};
let configObj = {
method: "POST",
headers: {
"Content-Type": "application/json",
"Accept": "application/json"
},
body: JSON.stringify(formData)
};
return fetch("http://localhost:3000/toys", configObj)
.then(function(response) {
return response.json();
})
.then(function(object) {
console.log(object);
getAllToys(object)
})
.catch(function(error) {
console.log(error.message);
});
}
그런 다음 게시 요청을했고 오류가 있으면 오류 메시지를 console.log합니다.
가져오기를 사용하여 POST 요청을 만드는 방법을 더 잘 이해하려면 이 YouTube 동영상을 자유롭게 확인하세요.
읽어주셔서 감사합니다!
진정으로,
브르타뉴
Reference
이 문제에 관하여(Day 91 : #100DaysofCode - FETCH를 사용하여 POST 및 PATCH 요청을 했습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sincerelybrittany/day-91-100daysofcode-made-a-post-and-patch-request-using-fetch-1cak텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)