get(상품 상세 조회)
axios
import axios from 'axios'
import { useState, useEffect } from "react";
function App() {
const [data, setData] = useState();
useEffect(() => {
const getMsg = async () => {
const res = await axios.get('https://mandarin.api.weniv.co.kr/product/detail/6396b06917ae666581c326db',
{
headers: {
"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjYzOTY4ZjYwMTdhZTY2NjU4MWMzMjMyNiIsImV4cCI6MTY3NTk5NTc3MSwiaWF0IjoxNjcwODExNzcxfQ.bD2PQEEpzGKw9_-1fCXss79KsMIxzm_lmZQwIe7clZE",
"Content-type": "application/json",
},
body: {},
}
)
console.log(res.data);
setData(res.data)
}
getMsg();
}, [])
return (
<>
{data ? <h1>{data.product.itemName}</h1> : <h1>404</h1>}
</>
)
}
export default App;
JavaScript
복사
import axios from 'axios'
import { useState, useEffect } from "react";
function App() {
const [data, setData] = useState();
useEffect(() => {
const getMsg = async () => {
const res = await axios.get('https://mandarin.api.weniv.co.kr/product/detail/6396b06917ae666581c326db',
{
headers: {
"Authorization": window.localStorage.getItem("Authorization"),
"Content-type": "application/json",
},
body: {},
}
)
console.log(res.data);
setData(res.data)
}
getMsg();
}, [])
return (
<>
{data ? <h1>{data.product.itemName}</h1> : <h1>404</h1>}
</>
)
}
export default App;
JavaScript
복사
로컬스토리지에 토큰을 저장했을 경우
fetch
import axios from 'axios'
import { useState, useEffect } from "react";
function App() {
const [data, setData] = useState();
useEffect(() => {
const getPost = async () => {
const res = await fetch("https://mandarin.api.weniv.co.kr/product/detail/6396b06917ae666581c326db",{
method: "GET",
headers:{
"Content-type" : "application/json",
"Authorization" : "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjYzOTY4ZjYwMTdhZTY2NjU4MWMzMjMyNiIsImV4cCI6MTY3NTk5NTc3MSwiaWF0IjoxNjcwODExNzcxfQ.bD2PQEEpzGKw9_-1fCXss79KsMIxzm_lmZQwIe7clZE"
},
// body:
})
const json = await res.json()
setData(json)
}
getPost();
}, [])
console.log(data);
return (
<>
{data ? <h1>{data.product.itemName}</h1> : <h1>404</h1>}
</>
)
}
export default App;
JavaScript
복사
POST(댓글 작성)
axios
import axios from 'axios'
import { useState, useEffect } from "react";
function App() {
useEffect(() => {
const makeComment = async () => {
const res = await axios.post('https://mandarin.api.weniv.co.kr/post/6396adf617ae666581c32648/comments',
{
"comment":{
"content": "댓글 작성 !!! axios로 작성"
}
},
{
headers: {
"Authorization": "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjYzOTY4ZjYwMTdhZTY2NjU4MWMzMjMyNiIsImV4cCI6MTY3NTk5NTc3MSwiaWF0IjoxNjcwODExNzcxfQ.bD2PQEEpzGKw9_-1fCXss79KsMIxzm_lmZQwIe7clZE",
"Content-type": "application/json",
}
}
)
console.log(res);
}
makeComment();
}, [])
return (
<>
</>
)
}
export default App;
JavaScript
복사
fetch
import axios from 'axios'
import { useState, useEffect } from "react";
function App() {
useEffect(() => {
const makeComment = async () => {
const res = await fetch("https://mandarin.api.weniv.co.kr/post/6396adf617ae666581c32648/comments",{
method: "POST",
headers:{
"Content-type" : "application/json",
"Authorization" : "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjYzOTY4ZjYwMTdhZTY2NjU4MWMzMjMyNiIsImV4cCI6MTY3NTk5NTc3MSwiaWF0IjoxNjcwODExNzcxfQ.bD2PQEEpzGKw9_-1fCXss79KsMIxzm_lmZQwIe7clZE"
},
body: JSON.stringify({
"comment":{
"content": "댓글 작성 !!! fetch로 작성"
}
})
})
console.log(res)
}
makeComment();
}, [])
return (
<>
</>
)
}
export default App;
JavaScript
복사
•
body를 첫번째 인자, headers를 두 번째 인자로 해야 한다.