Ajax๋ ํ๋ ๋์ ์ธ ์น์์ ํ์์ ์ผ๋ก ์ฌ์ฉ๋๋ javascript ๊ธฐ์ ์ด๋ค.
๋ํ ๊ธฐ์ ๋ฉด์ ์์ ์์ฃผ ๋ฌป๋ ํค์๋์ด๋ฏ๋ก ํ๋ฒ ์ ๋ฆฌํด๋ณด์.
ajax๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ธ๋ผ์ฐ์ ๊ฐ ์๋ฒ์๊ฒ ๋น๋๊ธฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ณ , ์๋ฒ๊ฐ ์๋ตํ ๋ฐ์ดํฐ๋ฅผ ์์ ํ์ฌ ๋์ ์ผ๋ก ์นํ์ด์ง๋ฅผ ๊ฐฑ์ ํ๋ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ด๋ค.
๊ธฐ์กด ์ ์ ์ธ ์น์์๋ ํ์ด์ง ์ ํ์ ๋ฐ์ดํฐ์ ๋ณ๋์ฌํญ์ด ์์ ๋, ์๋ฒ์๊ฒ html์ ์์ฒญํ์ฌ ๊ธฐ์กด์ ๋ณํ์ง ์๋ ๋ฐ์ดํฐ๋ ๋ค์ ์๋ต๋ฐ์๋ค.
๋๋ฌธ์ ํ์ด์ง ์ ํ์ ์์ด ์์ ๋ฐ์ดํฐ์ ๋ณํ์๋ ๋ถ๊ตฌํ๊ณ ์ ์ฒด์ ์ธ ๋ฌธ์๋ฅผ ๋ค์ ์์ฒญ/์๋ต๋ฐ์์์ผํ๊ธฐ ๋๋ฌธ์ ๋นํจ์จ์ ์ธ ๋จ์ ์ด ์์๋ค.
์ด๋ก ์ธํด ํ๋ฉด ์ ํ์ด ์ผ์ด๋๋ฉด ํ๋ฉด์ด ์๊ฐ์ ์ผ๋ก ๊น๋นก์ด๋ ํ์์ด ๋ฐ์ํ๋ค.
- ์ด์ ์นํ์ด์ง์ ์ฐจ์ด๊ฐ ์์ด์ ๋ณ๊ฒฝํ ํ์๊ฐ ์๋ ๋ถ๋ถ๊น์ง ํฌํจ๋ ์์ ํ HTML์ ์๋ฒ๋ก๋ถํฐ ๋งค๋ฒ ์ ์ก๋ฐ๊ธฐ ๋๋ฌธ์ ๋ถํ์ํ ๋ฐ์ดํฐ ํต์ ์ด ๋ฐ์ํ๋ค.
2. ๋ณ๊ฒฝํ ํ์๊ฐ ์๋ ๋ถ๋ถ๊น์ง ์ฒ์๋ถํฐ ๋ค์ ๋ ๋๋งํ๋ค. ์ด๋ก ์ธํด ํ๋ฉด ์ ํ์ด ์ผ์ด๋๋ฉด ํ๋ฉด์ด ์๊ฐ์ ์ผ๋ก ๊น๋นก์ด๋ ํ์์ด ๋ฐ์ํ๋ค.- ํด๋ผ์ด์ธํธ์ ์๋ฒ์์ ํต์ ์ด ๋๊ธฐ ๋ฐฉ์์ผ๋ก ๋์ํ๊ธฐ ๋๋ฌธ์ ์๋ฒ๋ก๋ถํฐ ์๋ต์ด ์์ ๋๊น์ง ๋ค์ ์ฒ๋ฆฌ๋ ๋ธ๋กํน๋๋ค.
์นดํ ๊ณ ๋ฆฌ๊ฐ ์๋ ๋ด์ค ์นํ์ด์ง๋ฅผ ๋ง๋ค์ด๋ณธ๋ค๊ณ ์๊ฐํด๋ณด์.
Ajax๋ฅผ ํ์ฉํ๋ฉด ๋ด๊ฐ ๋ง๋ค์ด๋์ ํ์์์ News API๋ฅผ ๋ถ๋ฌ์ ๊ฐ ์นดํ ๊ณ ๋ฆฌ๋ง๋ค ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ ๋ก๋ฉํ ์ ์๋ค.
ํ์ง๋ง Ajax๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉด ๋ค๋ฅธ url์ ์นดํ ๊ณ ๋ฆฌ๋ณ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ก๋ฉํ๊ธฐ ์ํด์ html์ ๊ฐ ์นดํ ๊ณ ๋ฆฌ๋ณ๋ก ํด๋น ๋ฐ์ดํฐ๋ฅผ ์๊ธฐ๋ก ์์ฑํด์ผํ๋ค.
์ฆ, ๊ฐ ์นดํ ๊ณ ๋ฆฌ๋ณ html์ ๋ค์ ์์ฑํด์ฃผ๊ณ ํด๋น ๋ฐ์ดํฐ๋ฅผ ๊ฐ html์ ์นดํ ๊ณ ๋ฆฌ์ ๋ง๋ ๋ฐ์ดํฐ๋ฅผ ์์ฑํด์ค์ผํ๋ค๋ ๊ฒ์ด๋ค.
๋ํ ์ด๋ ๊ฒ ๋๋ฉด ์์์ ์ค๋ช ํ ๊ฒ์ฒ๋ผ ํ์ด์ง์ ํ์ ์์ด์ ๊ฐ html์ ์๋ก ๋ฐ์์ ํ๋ฉด์ด ๊น๋นก์์ด ๋ฐ์ํ๊ฒ ๋๋ ๊ฒ์ด๊ณ ์๋ฒ๊ฐ ์๋ตํ๊ธฐ ์ ๊น์ง๋ ๋ธ๋กํน ์ฒ๋ฆฌ๊ฐ ๋๋ ๊ฒ์ด๋ค.
ํ์ง๋ง ajax๋ ์ด์ ๋ํ ํด๊ฒฐ์ฑ
์ ์ ์ํ๋ค.
์๋ฒ๋ก๋ถํฐ ์นํ์ด์ง์ ๋ณ๊ฒฝ์ ํ์ํ ๋ฐ์ดํฐ๋ง ๋น๋๊ธฐ ๋ฐฉ์์ผ๋ก ์ ์ก๋ฐ์ ์นํ์ด์ง๋ฅผ ๋ณ๊ฒฝํ ํ์๊ฐ ์๋ ๋ถ๋ถ์ ๋ค์ ๋ ๋๋งํ์ง ์๊ณ , ๋ณ๊ฒฝํ ํ์๊ฐ ์๋ ๋ถ๋ถ๋ง ํ์ ์ ์ผ๋ก ๋ ๋๋งํ๊ฒ ํด์คฌ๋ค.
์ด๋ฅผ ํตํด ๋ถํ์ํ ๋ฐ์ดํฐ ํต์ ์ด ๋ฐ์ํ์ง ์๊ฒ ๋์ด ๋ณ๊ฒฝํ ํ์๊ฐ ์๋ ๋ถ๋ถ์ ๋ฆฌ๋ ๋๋งํ ํ์๊ฐ ์์ด์ก๋ค.
๊ทธ๋ ๊ฒ ๋จ์ผ๋ก์จ ํ๋ฉด์ด ์ ํ๋ ๋ ์๊ฐ์ ์ผ๋ก ๊น๋นก์ด๋ ํ์ ๋ํ ๋ฐ์ํ์ง ์๋๋ค.
ajax ๋ฐฉ์์ ๋ด๋น๊ฒ์ด์ ํด๋ฆญ ์ด๋ฒคํธ๋ฅผ ์บ์นํ๊ณ preventDefault ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ์๋ฒ๋ก์ ์์ฒญ์ ๋ฐฉ์งํ๋ค. ์ดํ, href ์ดํธ๋ฆฌ๋ทฐํธ์ path์ ์ฌ์ฉํ์ฌ ajax ์์ฒญ์ ํ๋ ๋ฐฉ์์ด๋ค.
๊ทธ๋ฆฌ๊ณ ๋น๋๊ธฐ๋ฐฉ์์ผ๋ก ์๋ํ์ฌ ์๋ต์ ๋ฐ์ ๋๊น์ง ๋ธ๋กํน๋ ๋ฐ์ํ์ง ์๋๋ค.
ajax์ ์ด๋ฌํ ์ฅ์ ๋ค์ ์ด์ ๊ณผ ๋ฌ๋ฆฌ ๋น ๋ฅธ ํผํฌ๋จผ์ค์ ๋ถ๋๋ฌ์ด ํ๋ฉด ์ ํ์ ๊ฐ๋ฅํ๊ฒ ํ๋ค.
ajax๋ ๋น๋๊ธฐ์ ์ผ๋ก ์๋ํ๋ค.
ajax๋ XMLHttpRequest ๊ฐ์ฒด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ํ๋ค.
XMLHttpRequest์ ๋น๋๊ธฐ ์ฒ๋ฆฌ๋ฅผ ์ํ ํ๋กํผํฐ ๋ฐ ๋ฉ์๋๋ฅผ ์ ๊ณตํ๋ค.
์ฃผ๋ก json์ด๋ผ๋ ํ ์คํธ ๋ฐ์ดํฐ ํฌ๋ฉง์ผ๋ก ํต์ ํ๋ค.