Hello creators ๐
2-7_Ajax ์์ํ๊ธฐ ๋ณธ๋ฌธ
2-7_Ajax ์์ํ๊ธฐ
๋ถ์๋งค๋_HA 2023. 10. 6. 06:59โ . ์ด๋ฒ ํ์ฐจ ํ์ต ๋ชฉํ (goal)
1. ๋ฐฐ์ฐ๊ณ ์ ํ๋ ๊ฒ
- ๋ค์ด๋ฒ์์
enter
์น๋ ๊ฒ ์ฒ๋ผ ==javascript ์์ ์ด๋ป๊ฒ ์๋ฒ์ ์์ฒญ ํ๋์ง!== ์์๋ณด๊ธฐ
โ ก. (๋ณต์ต) JSON ํ์ผ ํ์ ๋ง๋ณด๊ธฐ
1. ์ด๋ ๊ฒ list, dictionary ํฉ์ณ์ ธ์ ๋ด๋ ค์ค๋ ํ์ = JSON ํ์ผ ํ์
โ ก. Ajax ๊ธฐ๋ณธ
1. ๋์ ์
- ==jquery ๊ฐ ์ด๋ฏธ ์ค์น== ๋์ด ์์ด์ผ ํจ
2. ajax ๊ธฐ๋ณธ๊ณจ๊ฒฉ
a. ์์ฑ์์น
- javascript ๋ฅผ ํ์ฉํ๋ ๊ฑฐ๋๊น, ==script ํ๊ทธ== ์ ์์ฑ
b. ajax ๊ธฐ๋ณธ๊ณจ๊ฒฉ ์ฝ๋ #ajax_๊ธฐ๋ณธ๊ณจ๊ฒฉ_์์ ์ฝ๋
$.ajax({
type: "GET",
url: "์ฌ๊ธฐ์URL์์
๋ ฅ",
data: {},
success: function (response) {
console.log(response)
}
})
- [์ฝ์ด๋ณด๊ธฐ] ์ด๋ ๊ฒ ํ๋ฉด ์ด๋ค ๊ฒฐ๊ณผ๋ฌผ์ด ๋์?
get ๋ฐฉ์์ผ๋ก ํด๋น url ์ ์์ฒญํด์ reponse ๋ฅผ ๋ฐ์์ค๊ณ -> ๋ฐ์์จ response๋ฅผ console ์ ์ฐ์ด์ฃผ๊ฒ ๋ค.
- ์ ๋ ฅํ๋ url
- ๊ฒฐ๊ณผ๋ฌผ
๐ ์ค, ๋ญ๊ฐ ๋ฐ์์ง๊ฑฐ ๊ฐ์!!!
3) ๋ฐ์์จ response ์์ ์ข ๋ ์ํ๋ ๊ฒฐ๊ณผ๋ฌผ๋ก ์ ๊ทผํ๊ธฐ
a. ๋์ ๋๋ฆฌ ์๋ฃํ์ ์กด์คํด์ ๊ธฐ์ฌํ๊ณ -> ํ๋ฒ console ๋ก ์๋์ง ํ์ธ โญโญโญโญโญ
$.ajax({
type: "GET",
url: "http://spartacodingclub.shop/sparta_api/seoulair",
data: {},
success: function (response) {
console.log(response['RealtimeCityAir'])
}
})
- ์ฝ์ด๋ณด๊ธฐ
console.log(response['RealtimeCityAir'])
: ์ด๋ ๊ฒ ๊ธฐ์ฌํ ๊ฒ์ 'dict' ํ์ด๊ธฐ ๋๋ฌธ์key
๊ฐ์ ๋ฃ์ด์ value ๋ฅผ ๊ฐ์ ธ์จ๊ฑฐ์ผ! โญโญโญ
4) ์ํ๊ตฌ 30
์ด๋ ๊ฒ ์ฐ์ด๋ณด๊ธฐ
์ฐ์ ์๋ํ๋ ์ฝ๋
$.ajax({
type: "GET",
url: "http://spartacodingclub.shop/sparta_api/seoulair",
data: {},
success: function (response) {
let rows = response['RealtimeCityAir']['row']
for (let i = 0; i < rows.length; i++) {
let gu_name = rows[i]['MSRSTE_NM']
let gu_mise = rows[i]['IDEX_MVL']
console.log(gu_mise, gu_name)
}
}
})
- ์ฝ์ด๋ณด๊ธฐ
1 block
: ๋ฐ์ดํฐ๋ฅผ READ ํ๊ณ ์ถ์ด์ ํด๋น url ์ GET ๋ฐฉ์์ผ๋ก ์์ฒญํจ -> ๋ฐ์์จ ๋ฐ์ดํฐ๋ response ์ ๋ด๊น
2 block
: ๋ฐ์์จ response ๋ dictionary ํํ์๊ธฐ์ key ๋ฅผ ์จ์ value ๋ฅผ ์ทจํจ.
์ด๋, ==๋ฐ์์จ response ๊ฐ ์ด๋ค ์๋ฃ๊ตฌ์กฐ์ ๋ด๊ฒจ์๋์ง ๋ชจ๋ฅด๊ธฐ ๋๋ฌธ์, console ๋ก ํ์ธ== ํด๊ฐ๋ฉด์, ํ๋์ฉ ๋ค์ด๊ฐ ํ์๊ฐ ์์.
๋ง์ฝ, ์ํ๋ ๋ฐ์ดํฐ๋ฅผ console ๋ก ํ์ธํ๋ค๋ฉด -> ==๊ทธ๊ฑธ let rows
๊ฐ์ ๋ณ์์== ๋ด๋๋ค.
3 block
(let i = 0; i < rows.length; i++
์ด ๋ณ์๊ฐ ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์๋ฏธํ๋๊ฑด์ง ์๋ ๊ฑด ์ค์. โญโญโญ
๋ฐ๋ณต๋ฌธ์์ i ๋ '๋ฐฐ์ด ์์ ๋ฐฐ์น๋ ์์' ๋ฅผ ์๋ฏธํ ๊ฒ.
๋ณด๋ ์์๊ฐ 0 ๋ถํฐ ์์ํด์ ํด๋น ์ด์ ๋ ๊น์ง ๊ฐ๊ณ , ์ฆ๊ฐํ๋ ์์๋ ํ๋์ฉ.
๋๋จธ์ง
: ๋ฆฌ์คํธ์ ๋ช ๋ฒ์งธ ๋ก ๊ฐ์ -> ํด๋น key ๊ฐ์ ํด๋นํ๋ value ๋ฅผ ๊ฐ์ ธ์๋ผ -> ๊ทธ๊ฑธ console ๋ก ๋ณด์ฌ์ค๋ผ ( = f12 ๋ก ํ์ธํ ์ ์๊ฒ ํด๋ฌ๋ผ. )
๊ฒฐ๊ณผ๋ฌผ
- ๊ทธ๋ฌ๋ฉด, '๊ตฌ ์ด๋ฆ', '๊ตฌ ๋ฏธ์ธ๋จผ์ง' ๊ฐ ์ถ๋ ฅ๋์ด์ ๋์ด
๐ญ What i learned
โญโญโญ console ๋ก ์ํ๋ ๋ฐ์ดํฐ๊ฐ ์ฐํ๋ ๊ฑธ ํ์ธํ๊ณ -> ๊ทธ๊ฑธ ๋ณ์์ ๋ด๋๋ค! ์ด๊ฑด ์ต๊ด์ธ๊ฑฐ ๊ฐ๋ค โญโญโญโญโญโญโญ
๋ํ ๋ฝ์๋ธ ๊ฐ์ด ๋ฆฌ์คํธ์ ๋ด๊ฒจ์๋ค๋ ๊ฒ ๋ํ ์๊ณ ์์!
'[WEB & AI] (feat. ์ทจ์ค) > ์คํ๋ฅดํ์ฝ๋ฉํด๋ฝ_์น๊ฐ๋ฐ์ข ํฉ๋ฐ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
2-9_Quiz_Ajax ์ฐ์ตํ๊ธฐ(1) (2) | 2023.10.06 |
---|---|
2-8_Ajax ํจ๊ป ์ฐ์ตํ๊ธฐ (0) | 2023.10.06 |
2-6_์๋ฒ-ํด๋ผ์ด์ธํธ ํต์ ์ดํดํ๊ธฐ (4) | 2023.10.05 |
2-5_Quiz_JQuery ์ฐ์ตํ๊ธฐ (0) | 2023.10.05 |
2-4_JQuery ์ ์ฉํ๊ธฐ(ํฌ์คํ ๋ฐ์ค) (0) | 2023.10.05 |