Skip to content

KDT1-FE/KDT-FP-YOUTUBE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 

Repository files navigation

์œ ํŠœ๋ธŒ ์•ฑ ์ž‘์„ฑ

์œ ํŠœ๋ธŒ์•ฑ ์„ค๋ช…์ž๋ฃŒ: https://docs.google.com/document/d/1vHlO8lgIo1oXBYiecpE8TbG2tHnr3Hmv25UxK_7a5_g/edit#

๋ชฉํ‘œ: ์œ ํŠœ๋ธŒ ์•ฑ์„ ๋งŒ๋“ ๋‹ค.

์ˆ˜ํ–‰ ๊ธฐ๊ฐ„: 3.17(๊ธˆ) 18์‹œ๊นŒ์ง€

์ œ์ถœ ๋ฐฉ๋ฒ•: main ํ˜น์€ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ๋ธŒ๋žœ์น˜๋กœ ์ ˆ๋Œ€ ๋ณ‘ํ•ฉํ•˜์ง€ ์•Š๋„๋ก ์ฃผ์˜ํ•˜์„ธ์š”!

ํ˜น์‹œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒฝ์šฐ, ๋ฐ”๋กœ ๊ฐ•์‚ฌ์—๊ฒŒ ์•Œ๋ ค์ฃผ์„ธ์š”! ํ˜„์žฌ ๊นƒํ—™ ์ €์žฅ์†Œ๋ฅผ ํด๋ก !

ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋„๋ก ๋ณธ๋ช…์œผ๋กœ ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ! ๊ณผ์ œ ์ˆ˜ํ–‰ ํ›„ ์›๊ฒฉ ์ €์žฅ์†Œ๋กœ ํ‘ธ์‹œ!

ํ˜„์žฌ ๊นƒํ—™ ์ €์žฅ์†Œ์—์„œ main ๋ธŒ๋žœ์น˜๋กœ Pull Request ์ƒ์„ฑํ•˜๋ฉด ์ œ์ถœ ์™„๋ฃŒ!

Pull Request ์„ค๋ช…์„ ๊ผผ๊ผผํ•˜๊ฒŒ ์ž‘์„ฑ!

์š”๊ตฌ์‚ฌํ•ญ ๋‹ค์Œ ์š”๊ตฌ์‚ฌํ•ญ์€ ํ•„์ˆ˜๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ๊ทธ ์™ธ ๊ธฐ๋Šฅ์€ ๋งˆ์Œ๋Œ€๋กœ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์œ ํŠœ๋ธŒ api๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์œ ํŠœ๋ธŒ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

์œ ํŠœ๋ธŒ Api ์‚ฌ์šฉ ๋ฐฉ๋ฒ• (API KEY ์ƒ์„ฑํ•˜๋Š” ๋ฒ•)

  1. Google cloud console๋กœ ์ด๋™ํ•˜๊ธฐ (https://console.cloud.google.com/)
  2. Youtube Data API ํ™œ์„ฑํ™” ์‹œํ‚ค๊ธฐ
  3. API KEY ์ƒ์„ฑํ•˜๊ธฐ

์œ ํŠœ๋ธŒ API ์š”์ฒญ ๋ฐฉ๋ฒ•

baseURL : https://youtube.googleapis.com/youtube/v3

๊ฒ€์ƒ‰์–ด๋กœ ์ธํ•œ ๋น„๋””์˜ค ๋ฐ์ดํ„ฐ: /search?part=snippet&maxResults=10&q={๊ฒ€์ƒ‰์–ด}

ํŠน์ • ๋น„๋””์˜ค ๋ฐ์ดํ„ฐ : /videos?part=snippet&part=contentDetails&part=player&part=statistics&id={videoId}

ํŠน์ • ์ฑ„๋„ ์ •๋ณด ๋ฐ์ดํ„ฐ: /channels?part=snippet&part=statistics&part=contentDetails&id={channelId}

๋Œ“๊ธ€ ๋ฐ์ดํ„ฐ: /commentThreads?part=snippet&videoId={videoId}

๊ด€๋ จ ๋น„๋””์˜ค ๋ฐ์ดํ„ฐ: /search?part=snippet&maxResults=10&relatedToVideoId=${videoId}&type=video

์š”์ฒญ ์ฃผ์˜ ์‚ฌํ•ญ

  • ํ•˜๋ฃจ์— ํ•˜๋‚˜์˜ api_key์— ํ• ๋‹น๋œ ์š”์ฒญ ์ˆ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ด์ƒ ๋„˜์–ด๊ฐ€๋ฉด ๋” ์ด์ƒ ์š”์ฒญ์„ ๋ชปํ•˜๊ฒŒ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋ฉด localStorage์— ๋„ฃ์–ด์„œ localStorage์— ์ด๋ฏธ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ์œผ๋ฉด ์š”์ฒญ์„ ๋ณด๋‚ด์ง€ ๋ง๊ณ  ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•ด์„œ ์•ฑ์„ ๊ฐœ๋ฐœํ•ด ์ค๋‹ˆ๋‹ค.

  • <React.StrictMode>๋ฅผ ์—†์• ๋„ ๊ฐœ๋ฐœ์„ ํ•ด์ฃผ์„ธ์š”. (์š”์ฒญ์ด ๋‘ ๋ฒˆ์”ฉ ๊ฐ€์„œ ๋” ๋งŽ์€ api ํ˜ธ์ถœ์„ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.)

UI ๊ตฌํ˜„ ์˜ˆ์‹œ ์˜ˆ์‹œ๋ฅผ ์ฐธ๊ณ ๋กœ ์ž์œ ๋กญ๊ฒŒ ๊ตฌํ˜„ํ•œ๋‹ค.

๋ฉ”์ธ ํ™”๋ฉด

youtube api ๋ฅผ ์ด์šฉํ•ด์„œ ์›ํ•˜๋Š” ๊ฒ€์ƒ‰์–ด์— ๋งž๋Š” ๋น„๋””์˜ค ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•ด์„œ ์•„๋ž˜์™€ ๊ฐ™์€ UI๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. Navigation bar (์œ„์ชฝ ๋ถ€๋ถ„) side bar (์™ผ์ชฝ ๋ถ€๋ถ„)์˜ UI๋ฅผ ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ฒ˜๋ฆฌํ•ด์ค๋‹ˆ๋‹ค.

๋น„๋””์˜ค ํ™”๋ฉด

youtube api ๋ฅผ ์ด์šฉํ•ด์„œ ํŠน์ • ๋น„๋””์˜ค, ๋Œ“๊ธ€, ๊ด€๋ จ ๋น„๋””์˜ค ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•ด์„œ ์•„๋ž˜์™€ ๊ฐ™์€ UI๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

๊ฒ€์ƒ‰ ํ™”๋ฉด

youtube api ๋ฅผ ์ด์šฉํ•ด์„œ ์›ํ•˜๋Š” ๊ฒ€์ƒ‰์–ด์— ๋งž๋Š” ๋น„๋””์˜ค ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค. ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•ด์„œ ์•„๋ž˜์™€ ๊ฐ™์€ UI๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

์ฃผ์˜ ์‚ฌํ•ญ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋‚˜๋ˆ„๊ธฐ ๋ฐ˜์‘ํ˜• ์Šคํƒ€์ผ๋„ ์‹ ๊ฒฝ ์“ฐ๋˜ ์Šคํƒ€์ผ๋ณด๋‹ค๋Š” ๊ธฐ๋Šฅ ์œ„์ฃผ๋กœ ๊ฐœ๋ฐœํ•˜๊ธฐ ์ตœ๋Œ€ํ•œ ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ๋ณ€์ˆ˜๋ช…, ํŒŒ์ผ๋ช…, ์ปดํฌ๋„ŒํŠธ๋ช… ์‚ฌ์šฉํ•˜๊ธฐ ์–ด๋– ํ•œ ๋ถ€๋ถ„(๋ฐ์ดํ„ฐ)์„ ์œ„ํ•ด์„œ State ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ• ์ง€ ์ƒ๊ฐํ•ด ๋ณด๊ธฐ React-router-dom api์˜ ์ค‘์ฒฉ ๋ผ์šฐํŒ…์„ ์ด์šฉํ•ด์„œ ๋ ˆ์ด์•„์›ƒ์„ ๋งŒ๋“ค์–ด์ฃผ๊ธฐ

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published