OMDB API
์๋ ์ฌ์ดํธ์ ๋ค์ด๊ฐ์ ์ํ ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ณ ๋ฐ์์ค๋ ์์ ์ ํ ๊ฒ์ด๋ค.
OMDb API - The Open Movie Database
www.omdbapi.com
Query String
์ฃผ์?์์ฑ=๊ฐ&์์ฑ=๊ฐ&์์ฑ=๊ฐ
์ฃผ์ ? apiKey = ํค ๊ฐ & S = ์ํ ์ ๋ชฉ
E.g. ๊ฒจ์ธ์๊ตญ ์ํ ๋ฐ์ดํฐ ์์ฒญํ๊ธฐ
http://www.omdbapi.com/?apikey=######&s=frozen
axios
Axios๋ ๋ธ๋ผ์ฐ์ , Node.js๋ฅผ ์ํ Promise API๋ฅผ ํ์ฉํ๋ HTTP ๋น๋๊ธฐ ํต์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค.
์๋ ์ฌ์ดํธ์ ๋ค์ด๊ฐ์ axios ์ค์น๋ฅผ ์๋ฃํ๋ค.
https://github.com/axios/axios
GitHub - axios/axios: Promise based HTTP client for the browser and node.js
Promise based HTTP client for the browser and node.js - GitHub - axios/axios: Promise based HTTP client for the browser and node.js
github.com
$ npm install axios
์ค์น๊ฐ ์๋ฃ๋๋ฉด package.json์ axios๊ฐ ์๊ธด ๊ฒ์ ๋ณผ ์ ์๋ค.
"dependencies": {
"axios": "^0.26.0",
"lodash": "^4.17.21"
}
์ํ ๋ฐ์ดํฐ api ๋ฐ์์ค๊ธฐ
๊ฒจ์ธ์๊ตญ์ ์ํ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ฌ ๊ฒ์ด๋ค.
๋ฐ์ดํฐ์ ์ข ๋ฅ์๋ ์ํ ์ ๋ชฉ, ํฌ์คํฐ ๋ฑ๋ฑ ์ฌ๋ฌ๊ฐ์ง ๋ฐ์ดํฐ๊ฐ ์๋ค.
import axios from 'axios'
function fetchMovies () {
axios
.get('https://www.omdbapi.com/?apikey=7035c60c&s=frozen') // ์์ฒญ
.then((res) => {
console.log(res)
const h1El = document.querySelector('h1')
const imgEl = document.querySelector('img')
h1El.textContent = res.data.Search[0].Title
imgEl.src = res.data.Search[0].Poster
})
}
fetchMovies()
- res๋ response, resert์ ์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
- h1 ํ๊ทธ์๋ Title๋ฅผ ๋ฐ์์ค๋ฉด Frozen์ด ๋์จ๋ค.
- img ํ๊ทธ์๋ Poster๋ฅผ ๋ฐ์์จ๋ค.
'๐ค Language > ๐จ JavaScript' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
JS. ์ ๊ท์ ์์ฑ (0) | 2022.02.27 |
---|---|
JS. ์ ๊ทํํ์(Regex) (0) | 2022.02.27 |
JS. Storange (0) | 2022.02.26 |
JS. JSON (0) | 2022.02.25 |
JS. Lodash ์ฌ์ฉ๋ฒ (0) | 2022.02.25 |