axios
-
- [Axios] ํค๋์ ์ธ์ฆ ์ ๋ณด ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ
ํค๋์ ์ธ์ฆ ์ ๋ณด ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ๋ค์ด๊ฐ๋ฉฐAxios๋ฅผ ์ฌ์ฉํ์ฌ ํค๋์ ์ธ์ฆ(Authorization) ์ ๋ณด๋ฅผ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณธ๋ค.์ด ๊ธ์ ๋ฆฌ์กํธ(React) ์ฝ๋๋ก ์์ฑ๋์๋ค. ๋ฐฉ๋ฒโ ํ์ผ์ ์ธ์ฆ ํค๋ ๋ถ๋ถ ์ถ๊ฐํ๊ธฐAPI ํธ์ถ์ ํ๊ณ ์ ํ๋ ํ์ผ ์์ ์ธ์ฆ ์ ๋ณด๋ฅผ ๋ด์ ๋ณ์๋ฅผ ์์ฑํ์ฌ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ด๋ค.// ์ธ์ฆ ์ ๋ณด๋ฅผ ๋ด์ ๋ณ์const authHeader = (thunkAPI) => { return { headers: { authorization: `Bearer ${thunkAPI.getState().user.user.token}`, }, };};export const createJobThunk = async (job, thunkAPI) => { try { const..
1 2024.11.14 -
- [Axios] HTTP ๋ฉ์๋
HTTP ๋ฉ์๋๋ค์ด๊ฐ๋ฉฐAxios์ ํจ๊ป HTTP ๋ฉ์๋์ ๋ํด ์ ๋ฆฌํด๋ณธ๋ค. HTTP ๋ฉ์๋๊ฐ๋ HTTP(Hypertext Transfer Protocol) ๋ฉ์๋๋ ์น ์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ฑฐ๋ ์์ ํ๊ฑฐ๋ ์ญ์ ํ๋ ๋ฑ์ ์์ ์ ์ํํ ๋ ์ฌ์ฉํ๋ ๋ฉ์๋์ด๋ค.์์ฃผ ์ฌ์ฉ๋๋ ๋ฉ์๋๋ก๋ GET, POST, PATCH, DELETE๊ฐ ์์ผ๋ฉฐ, @fetch()@ ๋๋ Axios ๋ฑ์ ์ด์ฉํ์ฌ ์ด๋ฌํ ์์ฒญ์ ๋ณด๋ผ ์ ์๋ค. ์ข ๋ฅโ GET์๋ฒ์์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ๋ฐ ์ฌ์ฉ๋๋ค.์ฃผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ ๋ณด๋ฅผ ์กฐํํ๊ฑฐ๋, ์น ํ์ด์ง๋ฅผ ์ฝ๊ฑฐ๋, ํ์ผ์ ๋ค์ด๋ก๋ํ ๋ ์ฌ์ฉ๋๋ค.try { const response = await axios.get('/api/data'); console.log(response.data);} ..
1 2024.09.21 -
- [Axios] ์ ์ญ(Global)/์ปค์คํ (Custom) ์ธ์คํด์ค, ์ธํฐ์ ํฐ(Interceptor)
์ ์ญ(Global)/์ปค์คํ (Custom) ์ธ์คํด์ค, ์ธํฐ์ ํฐ(Interceptor)๋ค์ด๊ฐ๋ฉฐAxios์ ์ ์ญ(Global)/์ปค์คํ (Custom) ์ธ์คํด์ค, ์ธํฐ์ ํฐ(Interceptor) ๊ฐ๋ ์ ๋ํด ์ ๋ฆฌํด๋ณธ๋ค. ์ ์ญ ์ธ์คํด์ค(Global Instance)๊ฐ๋ Axios์ ๊ธฐ๋ณธ ์ธ์คํด์ค๋ฅผ ์ค์ ํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฒด์์ ์ฌ์ฉํ ์ ์๋๋ก ํ๋ ๋ฐฉ๋ฒ๋ชจ๋ Axios ์์ฒญ์ ๊ธฐ๋ณธ์ ์ธ ์ค์ (์: @baseURL@, @headers@ ๋ฑ)์ ์ ์ฉํ ์ ์๋ค. ์ค์ ๋ฐฉ๋ฒํ๋ก์ ํธ์ @src@ ํด๋ ์์ @axios@ ํด๋๋ฅผ ๋ง๋ค๊ณ , @global.js@ ํ์ผ์ ์์ฑํ๋ค.๊ทธ๋ฆฌ๊ณ ๋ค์๊ณผ ๊ฐ์ด ์ฝ๋๋ฅผ ์์ฑํ๋ค.import axios from 'axios';// In latest axios version common proper..
2024.09.20 -
- [JavaScript] fetch() API์ Axios์ ์๋ฌ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ ๋น๊ต
fetch() API์ Axios์ ์๋ฌ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ ๋น๊ต๋ค์ด๊ฐ๋ฉฐFetchAPI์ Axios์ ์๋ฌ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ์ ์ฐจ์ด์ ๋ํด ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํด๋ณธ๋ค. ์ค๋ฅ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ ๋น๊ตfetch() API๊ธฐ๋ณธ์ ์ผ๋ก ๋คํธ์ํฌ ์์ฒญ์ด ์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋์๋์ง๋ฅผ ์ํ ์ฝ๋(Status Code)๊ฐ ์๋, ๋คํธ์ํฌ ์ค๋ฅ ์ฌ๋ถ๋ก ํ๋จํ๋ค.์ฆ, ๋คํธ์ํฌ ์ฐ๊ฒฐ์ด ์ ๋๋ก ๋์ด ์๋ฒ์ ์์ฒญ์ด ์ ๋ฌ๋๊ณ , ์๋ฒ๋ก๋ถํฐ ์๋ต์ด ์๋ค๋ฉด, ๊ทธ ์๋ต์ด 200๋ฒ๋(์ฑ๊ณต) ์ํ ์ฝ๋์ธ์ง, 400๋ฒ๋(ํด๋ผ์ด์ธํธ ์ค๋ฅ) ๋๋ 500๋ฒ๋(์๋ฒ ์ค๋ฅ) ์ํ ์ฝ๋์ธ์ง์ ์๊ด์์ด ์์ฒญ์ด '์ฑ๊ณต์ ์ผ๋ก' ์๋ฃ๋ ๊ฒ์ผ๋ก ๊ฐ์ฃผํ๋ค.์ด ๊ฒฝ์ฐ @fetch()@๋ ํ๋ก๋ฏธ์ค(Promise)๋ฅผ ์ฑ๊ณต ์ํ๋ก ๋ฐํํ๋ฉฐ, ์๋ต ๊ฐ์ฒด๋ฅผ @resolve@ํ๋ค.์ด ๋๋ฌธ์ 4xx ๋๋ 5xx์ ..
2024.08.30 -
- [Axios] Axios ๋ผ์ด๋ธ๋ฌ๋ฆฌ
Axios ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค์ด๊ฐ๋ฉฐAxios ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ํด ์์๋ณด์. Axios๊ฐ๋ Node.js ๋ฐ ๋ธ๋ผ์ฐ์ ์์ ๋์ํ๋ HTTP ํด๋ผ์ด์ธํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค ํ๋์ฃผ๋ก HTTP ์์ฒญ(Request)์ ์์ฑํ๊ณ ์๋ต(Response)์ ์ฒ๋ฆฌํ๋ ๋ฐ ์ฌ์ฉ๋๋ค.Axios๋ Promise ๊ธฐ๋ฐ์ผ๋ก ์์ฑ๋์ด ์์ด ๋น๋๊ธฐ ์ฝ๋๋ฅผ ์ฝ๊ฒ ๋ค๋ฃฐ ์ ์๋ค.๋์ผํ ์ฝ๋๋ฒ ์ด์ค๋ก ๋ธ๋ผ์ฐ์ ์ Node.js์์ ์คํํ ์ ์๋ค.์๋ฒ ๋จ(Server-Side)์์๋ ๋ค์ดํฐ๋ธ Node.js์ @http@ ๋ชจ๋์ ์ฌ์ฉํ๊ณ , ํด๋ผ์ด์ธํธ(๋ธ๋ผ์ฐ์ )์์๋ @XMLHttpRequests@๋ฅผ ์ฌ์ฉํ๋ค.Axios๋ฅผ ์ฌ์ฉํ๋ฉด HTTP ์์ฒญ์ ์ฝ๊ฒ ์์ฑํ๊ณ ์๋ต์ ์ฒ๋ฆฌํ ์ ์๋ค.ํนํ ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ์์ Promise๋ฅผ ์ฌ์ฉํ๋ฏ๋ก ์ฝ๋๊ฐ ๋ ์ฝ๊ธฐ ์ฝ๊ณ ์ ..
2023.11.15