TIL_Ajax

๋ฐ•์„ฑํ›ˆยท2022๋…„ 8์›” 5์ผ
0

๋ฐฑ์—”๋“œ

๋ชฉ๋ก ๋ณด๊ธฐ
5/13
post-thumbnail

๐Ÿ’ก Ajax

Asynchronous Javascript And XMLHttpRequest

Ajax๋Š” ์›น ํŽ˜์ด์ง€์— ํ•„์š”ํ•œ ๋ถ€๋ถ„์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ๋น„๋™๊ธฐ์ ์œผ๋กœ ๋ฐ›์•„์™€ ํ™”๋ฉด์— ๊ทธ๋ ค๋‚ผ ์ˆ˜ ์žˆ๋Š” ์›น ๊ฐœ๋ฐœ ๊ธฐ๋ฒ•์ด๋‹ค.

์šฐ๋ฆฌ๊ฐ€ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ํ†ตํ•ด ์›นํŽ˜์ด์ง€๋ฅผ ์—ด๋ฉด, html์— ์˜ํ•ด ์šฐ๋ฆฌ์—๊ฒŒ ํ•„์š”ํ•œ ํŽ˜์ด์ง€๊ฐ€ ๋ Œ๋”๋ง๋œ๋‹ค.
์ด ๋•Œ, html์— ์ž‘์„ฑ๋œ ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ, ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์— ๋”ฐ๋ผ ๋ณ€ํ™”๋˜๋Š” ๋ถ€๋ถ„์ด ์žˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

์œ„์˜ ์‚ฌ์ง„์ฒ˜๋Ÿผ ๊ฒ€์ƒ‰์ฐฝ์— ํ‚ค์›Œ๋“œ๋ฅผ ์ž…๋ ฅํ•  ๋•Œ๋งˆ๋‹ค, ์—ฐ๊ด€๋œ ๋‹จ์–ด๋“ค์ด ํ•˜๋‹จ์— ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ Œ๋”๋ง๋œ๋‹ค.

์ฆ‰, ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋งŒ ๋น„๋™๊ธฐ์ ์œผ๋กœ ๋ฐ›์•„์™€ ๋ Œ๋”๋งํ•˜๋Š” ๊ฒƒ์œผ๋กœ์จ ์—ฌ๊ธฐ์„œ ์‚ฌ์šฉ๋œ ๊ธฐ์ˆ ์ด Ajax์ด๋‹ค.

๐Ÿ” Ajax์˜ ํ•ต์‹ฌ๊ธฐ์ˆ 

JavaScript, DOM, Fetch

์ด์ „์—๋„ ํ•™์Šตํ–ˆ๋“ฏ์ด, Fetch๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

Ajax์˜ ํ•ต์‹ฌ์€ html์ „์ฒด๊ฐ€ ์•„๋‹Œ ํ•„์š”ํ•œ ๋ถ€๋ถ„์— ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ Œ๋”๋งํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

JavaScript์—์„œ DOM์„ ์‚ฌ์šฉํ•ด ํ•„์š”ํ•œ ์—˜๋ฆฌ๋จผํŠธ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ณ , ์—ฌ๊ธฐ์— Fetch๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” ๋ถ€๋ถ„์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

๐Ÿ” Ajax์˜ ์žฅ์ 

  1. ์„œ๋ฒ„์—์„œ HTML์„ ์™„์„ฑํ•˜์—ฌ ๋ณด๋‚ด์ฃผ์ง€ ์•Š์•„๋„ ์›นํŽ˜์ด์ง€ ์ œ์ž‘ ๊ฐ€๋Šฅ
  2. ํ‘œ์ค€ํ™”๋œ ๋ฐฉ๋ฒ• (๋ธŒ๋ผ์šฐ์ €์— ์ƒ๊ด€์—†์ด ์‚ฌ์šฉ๊ฐ€๋Šฅ)
  3. ์œ ์ € ์ค‘์‹ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ (๋น ๋ฅด๊ณ  ๋” ๋งŽ์€ ์ƒํ˜ธ์ž‘์šฉ์ด ๊ฐ€๋Šฅ)
  4. ๋” ์ž‘์€ ๋Œ€์—ญํญ (ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ JSON, XML ํ˜•ํƒœ๋กœ ์ฃผ๊ณ ๋ฐ›๊ธฐ ๋•Œ๋ฌธ์— ๋น„๊ต์  ๋ฐ์ดํ„ฐ ํฌ๊ธฐ๊ฐ€ ์ž‘์Œ)

๐Ÿ” Ajax์˜ ๋‹จ์ 

  • SEO (Search Engine Optimization)์— ๋ถˆ๋ฆฌ
    : ์„œ๋ฒ„์—์„œ ๋น„๋™๊ธฐ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ๋•Œ๋ฌธ์— ์ดˆ๋ฐ˜์˜ html์€ ๋ผˆ๋Œ€๋งŒ ์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ํฌ๋‹ค.
    ์ด๋•Œ, '๋„ค์ด๋ฒ„, ๊ตฌ๊ธ€' ๊ฐ™์€ ๊ฒ€์ƒ‰ ์‚ฌ์ดํŠธ๋“ค์€ ์ „ ์„ธ๊ณ„ ์‚ฌ์ดํŠธ์˜ html์— ์žˆ๋Š” ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•ด๊ฐ€๋Š” ๋ฐฉ์‹์œผ๋กœ ์šด์˜๋˜๋Š”๋ฐ, Ajax๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ, html์— ๋ฐ์ดํ„ฐ๊ฐ€ ๊ฑฐ์˜ ์—†๊ธฐ ๋•Œ๋ฌธ์—, SEO์— ๋ถˆ๋ฆฌํ•  ์ˆ˜ ๋ฐ–์— ์—†๋‹ค.

  • ๋’ค๋กœ๊ฐ€๊ธฐ ๋ฒ„ํŠผ๋ฌธ์ œ
    : Ajax์—์„œ๋Š” ์ด์ „ ์ƒํƒœ๋ฅผ ๊ธฐ์–ตํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋’ค๋กœ๊ฐ€๊ธฐ ๊ธฐ๋Šฅ๊ตฌํ˜„์— ์ œํ•œ์ด ๋งŽ๋‹ค.
    ์ด๋ฅผ ์œ„ํ•ด์„  ๋”ฐ๋กœ History API๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

profile
ํ”„๋ก ํŠธ์—”๋“œ ํ•™์Šต์ผ์ง€

0๊ฐœ์˜ ๋Œ“๊ธ€

๊ด€๋ จ ์ฑ„์šฉ ์ •๋ณด