클라이언트가 서버에 요청을 보낼 때 사용하는 방법으로 각 메서드는 특정한 목적과 용도를 가집니다.
서버에 새로운 자원(데이터)을 생성할 때 사용합니다.
<form> 태그로 POST 요청 보내기<!DOCTYPE html>
<html>
<body>
<form
id="product-form"
action="https://dummyjson.com/products/add"
method="POST"
>
<input type="text" name="title" placeholder="Product Title" required />
<input type="number" name="price" placeholder="Product Price" required />
<!-- 그 밖의 상품의 정보: category, description, stock, brand, ... -->
<button type="submit">상품 생성</button>
</form>
</body>
</html>
axios로 POST 요청 보내기import axios from "axios";
async function postProduct(config) {
const response = await axios(config);
console.log("추가된 상품:", response["data"]);
}
const config = {
method: "post", // HTTP 메서드
url: `https://dummyjson.com/products/add`, // 요청 API 주소
headers: { "Content-Type": "application/json" }, // 요청 헤더
data: {
title: "갤럭시 S99",
price: 9999999,
// 그 밖의 상품의 정보...
}, // 요청 본문(Body)
};
postProduct(config);
서버의 기존 자원(데이터)을 전체 수정할 때 사용합니다.
<form> 태그는 PUT 요청을 지원하지 않습니다.axios로 PUT 요청 보내기import axios from "axios";
async function putProduct(config) {
const response = await axios(config);
console.log("수정된 상품:", response["data"]);
}
const productId = 1; // 수정할 상품의 id
const config = {
method: "put", // HTTP 메서드
url: `https://dummyjson.com/products/${productId}`, // 요청 API 주소
headers: { "Content-Type": "application/json" }, // 요청 헤더
data: {
title: "아이폰 99",
// 그 밖의 상품의 정보...
}, // 요청 본문(Body)
};
putProduct(config);
서버의 기존 자원(데이터)을 삭제할 때 사용합니다.
<form> 태그는 DELETE 요청을 지원하지 않습니다.axios로 DELETE 요청 보내기import axios from "axios";
async function deleteProduct(config) {
const response = await axios(config);
console.log("상태 코드:", response["status"]);
console.log("삭제된 상품 정보:", response["data"]);
}
const productId = 1; // 삭제할 상품의 id
const config = {
method: "delete", // HTTP 메서드
url: `https://dummyjson.com/products/${productId}`, // 요청 API 주소
};
deleteProduct(config);