Request: ๋ฆฌํ€˜์ŠคํŠธ์˜ ๊ณผ๊ฑฐ์™€ ํ˜„์žฌ ๊ทธ๋ฆฌ๊ณ  ๋ฏธ๋ž˜

์— ๋งŒ๋“  2019๋…„ 03์›” 30์ผ  ยท  352์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: request/request

์ž์„ธํ•œ ๋‚ด์šฉ๊ณผ ์ถ”๋ก ์— ๋“ค์–ด๊ฐ€๊ธฐ ์ „์— ์š”์ ์œผ๋กœ ๋ฐ”๋กœ ๊ฐ€๊ฒ ์Šต๋‹ˆ๋‹ค. request ์ด JavaScript ์ƒํƒœ๊ณ„๋ฅผ ์œ„ํ•ด ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ๊ฐ€์น˜ ์žˆ๋Š” ์ผ์€ ์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ๋กœ ์ „ํ™˜ํ•˜๊ณ  ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ด๋‚˜ ์ฃผ์š” ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•œ ๊ณ ๋ ค๋ฅผ ์ค‘๋‹จํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐœ์„ ์„ ์œ„ํ•ด ์ตœ์„ ์„ ๋‹คํ•˜๊ณ  ์žˆ๋Š” request ์˜ ๋‹ค๋ฅธ ์ปค๋ฏธํ„ฐ๋“ค์—๊ฒŒ ๋ฏธ๋ฆฌ ์‚ฌ๊ณผ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ๊ฒŒ ์ตœ์„ ์ž…๋‹ˆ๋‹ค.

2009๋…„

request ์˜ ์ฒซ ๋ฒˆ์งธ ๋ฒ„์ „์€ Node.js ์ƒํƒœ๊ณ„๋ฅผ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ์ตœ์ดˆ์˜ ๋ชจ๋“ˆ ์ค‘ ํ•˜๋‚˜์˜€์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ดˆ๊ธฐ ๋ฒ„์ „์€ ํ‘œ์ค€ ์ฝœ๋ฐฑ ์ธํ„ฐํŽ˜์ด์Šค, ์ŠคํŠธ๋ฆผ, node_modules ๋ฐ npm๋ณด๋‹ค ์•ž์„  API์— ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ ๋ช‡ ๋…„ ๋™์•ˆ request ์™€ Node.js๋Š” ํ•จ๊ป˜ ๋ฐœ์ „ํ–ˆ๊ณ  ์„œ๋กœ์—๊ฒŒ์„œ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค. Node.js๊ฐ€ ์ฝ”์–ด ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ฐœ์„ ํ•˜๊ณ  ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•จ์— ๋”ฐ๋ผ ์š”์ฒญ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์˜€์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์ด ํ•ต์‹ฌ http ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ฑ„ํƒํ•˜๊ณ  ์ŠคํŠธ๋ฆผ์„ ์ŠคํŠธ๋ฆฌ๋ฐํ•จ์— ๋”ฐ๋ผ pipe ์ด๋ฒคํŠธ( request ์˜ ํ•œ ์ค„ ํ”„๋ก์‹œ ํ™œ์„ฑํ™”) ๋ฐ Core http์˜ ๋งŽ์€ ์žฌ์ž‘์„ฑ ์ค‘ ํ•˜๋‚˜( ํ•˜๋‚˜๋Š” ๋‚ด๊ฐ€ ์จ์•ผํ–ˆ์Šต๋‹ˆ๋‹ค).

npm

request ๋Š” npm ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ์ถ”๊ฐ€๋œ ์ฒซ ๋ฒˆ์งธ ๋ชจ๋“ˆ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. npm์ด ์„ฑ์žฅํ•จ์— ๋”ฐ๋ผ request ์— ๋Œ€ํ•œ ์˜์กด๋„๋„ ๋†’์•„์กŒ์Šต๋‹ˆ๋‹ค. npm ๊ฐ€ ๋ฐฑ์—”๋“œ ์ž‘์—…๋ณด๋‹ค ํ”„๋ก ํŠธ์—”๋“œ ์ž‘์—…์— ํ›จ์”ฌ ๋” ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์ง€๊ธˆ๋„ request ๋Š” ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์˜์กดํ•˜๋Š” ๋ชจ๋“ˆ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ด ๊ธ€์„ ์“ฐ๋Š” ๋™์•ˆ 41K ๋ชจ๋“ˆ์€ ์š”์ฒญ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง€๋ฉฐ ์ผ์ฃผ์ผ์— 1400๋งŒ ๋ฒˆ ๋‹ค์šด๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.

request ์ด Node.js ์ƒํƒœ๊ณ„์—์„œ ์ฐจ์ง€ํ•˜๋Š” ์œ„์น˜๋Š” ๋” ์ด์ƒ ํ˜์‹ ๊ฐ€๊ฐ€ ์•„๋‹ˆ๋ผ ๊ธฐ์กด ๊ธฐ์—…์ž…๋‹ˆ๋‹ค. Node.js์—์„œ HTTP๋กœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด Google์—์„œ ๊ฒ€์ƒ‰ํ•˜๋ฉด ์˜ˆ์ œ์—์„œ request ๋ฅผ ํด๋ผ์ด์–ธํŠธ๋กœ, express ๋ฅผ ์„œ๋ฒ„๋กœ ํ‘œ์‹œํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‘ ๊ฐ€์ง€ ํŠนํžˆ ๋‚˜์œ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.

์ƒํƒœ๊ณ„ ์ „๋ฐ˜์— ๊ฑธ์ณ request ๋ณด์œ ํ•˜๊ณ  ์žˆ๋Š” ํ˜„์žฌ ์œ„์น˜ ๋•Œ๋ฌธ์— ์œ ์‚ฌํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ƒˆ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ฑ„ํƒ์„ ์–ป๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ๋” ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ๋Œ€๋ถ€๋ถ„์˜ ์ข…์† ํ•ญ๋ชฉ์— ์˜ํ•ด ์ฑ„ํƒ๋˜์ง€ ์•Š์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ request ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ˆ˜์ฒœ ๊ฐœ์˜ ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ ๋ฐ ์Šคํƒ ์˜ค๋ฒ„ํ”Œ๋กœ ์‘๋‹ต๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์˜๋ฏธ ์žˆ๋Š” ๋ฐฉ์‹์œผ๋กœ ์š”์ฒญ์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค.

์ตœ์‹  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ

์ง€๋‚œ ๋ช‡ ๋…„์€ JavaScript์—์„œ ๊ทน์ ์ธ ์‹œ๊ฐ„์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์ด ์ˆ˜๋…„ ๋™์•ˆ ์ด์•ผ๊ธฐํ–ˆ๋˜ ๊ธฐ๋Šฅ์€ ์•„์ด๋””์–ด์—์„œ ํ‘œ์ค€์œผ๋กœ, ๋Œ€๋ถ€๋ถ„์˜ ํ™˜๊ฒฝ์—์„œ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ ๋ฐ”๋€Œ์—ˆ์Šต๋‹ˆ๋‹ค. ์ž๋™ ์—…๋ฐ์ดํŠธ ๋ธŒ๋ผ์šฐ์ €์™€ ๊ณต๊ฒฉ์ ์ธ Node.js ๋ฆด๋ฆฌ์Šค ์ผ์ • ๋•๋ถ„์— ์ด๊ฒƒ์ด ์ฑ„ํƒ๋˜๋Š” ์†๋„๋Š” ์—„์ฒญ๋‚ฉ๋‹ˆ๋‹ค.

request ์˜ ํ•ต์‹ฌ ํŒจํ„ด์ด ์˜ค๋ž˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ช‡๋ช‡ ์‚ฌ๋žŒ๋“ค์€ ๊ทธ ํ‰๊ฐ€์— ๋Œ€ํ•ด ์ด์˜๋ฅผ ์ œ๊ธฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋‚˜๋Š” ๊ทธ๋“ค์ด ๋ˆ„๊ตฌ์ธ์ง€ ์•Œ๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๋†€๋ผ์ง€ ์•Š๊ฒ ์ง€๋งŒ ์‚ฌ์‹ค์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ข…์ข… ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ ์ค‘ ์ผ๋ถ€๊ฐ€ Node.js์˜ ์ตœ์‹  ๋ฆด๋ฆฌ์Šค์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ ์ง€ ์–ผ๋งˆ ๋˜์ง€ ์•Š์•„ ์ „์ฒด ๊ธฐ๋Šฅ์„ ์ฑ„ํƒํ•ด์•ผ ํ•˜๋Š” ์˜ํ–ฅ์— ๋Œ€ํ•ด ํšŒ์˜์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ์ƒํƒœ๊ณ„์—์„œ ์ด๋Ÿฌํ•œ ํŒจํ„ด์œผ๋กœ์˜ ์ „ํ™˜์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ์–ผ๋งˆ๋‚˜ ์ง€์ €๋ถ„ํ• ์ง€๋Š” ์—ฌ์ „ํžˆ ๊ณต์ค‘์— ๋–  ์žˆ๊ณ  ๋‚˜๋Š” ์ฐป์žŽ์„ ์ฝ๊ณ  ๊ทธ๋Ÿฐ ์ ์—์„œ ๋ฏธ๋ž˜๊ฐ€ ์–ด๋–ค ๋ชจ์Šต์ผ์ง€ ์•Œ์•„๋‚ด๋ ค๊ณ  ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. request ๋Œ€ํ•œ ์งˆ๋ฌธ์€ "์šฐ๋ฆฌ๋Š” ๊ทธ ์ „ํ™˜์„ ํ†ตํ•ด ์ƒ์กดํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•ฉ๋‹ˆ๊นŒ?"์ž…๋‹ˆ๋‹ค. 1๋…„ ์ „์—๋Š” ๋‹ต์ด ๋ป”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๊ณ  ๊ทธ๋ ‡๊ฒŒ ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ ์ง€๊ธˆ์€ ๊ทธ ๋ฐ˜๋Œ€์— ๋Œ€ํ•ด ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์ƒˆ๋กœ์šด ์–ธ์–ด ํŒจํ„ด์„ ์ง„์ •์œผ๋กœ ์ˆ˜์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑ๋œ request ๋ฒ„์ „์€ ์‚ฌ์‹ค์ƒ ์ƒˆ ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๋ฏธ ์ด ๊ณต๊ฐ„์„ ์กฐ๊ธˆ ํƒ์ƒ‰ํ–ˆ๊ณ  ๋งค์šฐ ๋งŒ์กฑํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๋ฉด์—์„œ request ์™€ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด์ „ ํŒจํ„ด๊ณผ ํ˜ธํ™˜๋˜์ง€ ์•Š์ง€๋งŒ ์ƒˆ ํŒจํ„ด์„ ์™„์ „ํžˆ ์ˆ˜์šฉํ•˜์ง€ ์•Š๋Š” request ๋ฒ„์ „์˜ ๊ฐ€์น˜๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์ƒˆ๋กœ์šด ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•˜๊ณ  ์ด๋Ÿฌํ•œ ํŒจํ„ด์„ ์—ผ๋‘์— ๋‘๊ณ  ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ๋‹ค์‹œ ์ƒ๊ฐํ•˜๊ณ  ์žˆ๋Š” ์ƒˆ๋กœ์šด ๋ชจ๋“ˆ์˜ ์ „์ฒด ์„ธ๊ณ„๊ฐ€ ์žˆ์„ ๋•Œ ๋ถ€๋ถ„์ ์œผ๋กœ ํ˜ธํ™˜๋œ๋‹ค๋Š” ์ ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์ด ์ƒˆ ๋ชจ๋“ˆ์˜ ๊ฐ€์žฅ ์ข‹์€ ์ ์€ request ๊ฐ€ ์ฒœ์ฒœํžˆ ์‚ฌ๋ผ์ง€๊ณ  ๊ฒฐ๊ตญ์—๋Š” ํ•ด๋‹น ๋ ˆ๊ฑฐ์‹œ ์Šคํƒ์˜ ๋˜ ๋‹ค๋ฅธ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. request ํ˜„์žฌ ์œ„์น˜๋ฅผ ์ทจํ•˜๊ณ  ์ด๋ฅผ ์ฐจ์„ธ๋Œ€ ๊ฐœ๋ฐœ์ž์˜ ๋” ํฐ ๋ชซ์œผ๋กœ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์€ request ์˜ ๋ถ€๋‹ด์ด ์—†๋Š” ๋” ๋‚˜์€ ๋ชจ๋“ˆ์—์„œ ๋ฉ€์–ด์ง€๊ฒŒ ํ•˜๋ฏ€๋กœ ํ•ด๋‹น ๊ฐœ๋ฐœ์ž์—๊ฒŒ ํ•ด๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค

์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ

์—ฌ๊ธฐ ๊ณ„ํš์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • request ์ƒˆ ๊ธฐ๋Šฅ ์ˆ˜๋ฝ์ด ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค.
  • request ์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๊ณ ๋ คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ์—ฌ์ „ํžˆ ํ™œ์„ฑ ์ƒํƒœ์ธ ์ปค๋ฏธํ„ฐ๋Š” ์ ์‹œ์— ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ณ‘ํ•ฉํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€๋งŒ ์•ฝ์†์€ ์—†์Šต๋‹ˆ๋‹ค.
  • ๋ฆด๋ฆฌ์Šค๋Š” ์™„์ „ํžˆ ์ž๋™ํ™”๋˜๋ฉฐ ๋งˆ์Šคํ„ฐ๋กœ์˜ ๋ณ‘ํ•ฉ์ด ๊ฒŒ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ GitHub Actions๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด ์ด๊ฒƒ์„ ๋นŒ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค.

    • ์ปค๋ฐ‹ ๊ถŒํ•œ์ด ์‚ฌ์‹ค์ƒ npm ๊ฒŒ์‹œ ๊ถŒํ•œ์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„ํ™œ์„ฑ ๊ณต๋™ ์ž‘์—…์ž๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  2fa๋ฅผ ์‹œํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

neverstale

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์ €๋Š” ์ด๊ฒƒ์„ ์ „์ ์œผ๋กœ ์ง€์ง€ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฝ๊ณ  ๋ฉ”์‹œ์ง€ ๋ฐ/๋˜๋Š” ์ƒˆ ๋ฆด๋ฆฌ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ ์ ˆํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ์„ธ์Šค์™€ ๊ฐ€์ด๋“œ๋ผ์ธ์ด ๋ฐ”๋€Œ๋ฉด์„œ ์ž‘์—…์ด ํ›จ์”ฌ ์ˆ˜์›”ํ•ด์กŒ์Šต๋‹ˆ๋‹ค ๐Ÿ‘Œ

๋ชจ๋“  352 ๋Œ“๊ธ€

์ €๋Š” ์ด๊ฒƒ์„ ์ „์ ์œผ๋กœ ์ง€์ง€ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฝ๊ณ  ๋ฉ”์‹œ์ง€ ๋ฐ/๋˜๋Š” ์ƒˆ ๋ฆด๋ฆฌ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ ์ ˆํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ์„ธ์Šค์™€ ๊ฐ€์ด๋“œ๋ผ์ธ์ด ๋ฐ”๋€Œ๋ฉด์„œ ์ž‘์—…์ด ํ›จ์”ฌ ์ˆ˜์›”ํ•ด์กŒ์Šต๋‹ˆ๋‹ค ๐Ÿ‘Œ

@mikeal๋‹˜ ๋ง์”€ ์ž˜ ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ๊ฐ€์‹œ์„ฑ์„ ํ™•๋ณดํ•˜๊ธฐ ์œ„ํ•ด ์ด ๋ฌธ์ œ๋ฅผ ๊ณ ์ •ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ - ํ† ๋ก ํ•˜๊ณ  ์ž์› ๋ด‰์‚ฌํ•˜์‹ญ์‹œ์˜ค!

  • [ ] ํ”„๋กœ์ ํŠธ์˜ ํ˜„์žฌ ์ƒํƒœ๋กœ readme ์—…๋ฐ์ดํŠธ
  • [ ] ci ํผ๋ธ”๋ฆฌ์‹ฑ ํŒŒ์ดํ”„๋ผ์ธ @mikeal ์—…๋ฐ์ดํŠธ
  • [ ] request ๋Œ€์•ˆ https://github.com/request/request/issues/3143 ์— ๋Œ€ํ•œ ๋ช‡ ๊ฐ€์ง€ ์ง€์นจ์ด ํฌํ•จ๋œ ๋ฌธ์„œ ์ œ๊ณต
  • [ ] ํŒจํ‚ค์ง€ ์„ค์น˜ ์‹œ ๊ฒฝ๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
  • [ ] ์ง€์› ์ค‘๋‹จ ๋‚ ์งœ ์„ ํƒ(์ €๋Š” 6๊ฐœ์›”์— ํˆฌํ‘œํ•˜์ง€๋งŒ 12๊ฐœ์›”์ด ๋” ์šฐํ˜ธ์ ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค)
  • [ ] ๋ชจ๋“  ๊ธฐ๋Šฅ ์š”์ฒญ ๋ฐ ๊ธฐ๋Šฅ ํ™๋ณด ๋‹ซ๊ธฐ
  • [ ] ๊ด€๋ จ ๋ฒ„๊ทธ ์ˆ˜์ • ๊ฒ€ํ†  ๋ฐ ๋ณ‘ํ•ฉ
  • [ ] ๊ธฐ๋Šฅ์ด ๋ณ‘ํ•ฉ๋˜์ง€ ์•Š์Œ์„ ์„ค๋ช…ํ•˜๋Š” github ๋ฌธ์ œ ๋ฐ ํ™๋ณด ํ…œํ”Œ๋ฆฟ ์ถ”๊ฐ€
  • [ ] ๋‹ค์Œ ์ฃผ ๋ฒ„์ „( 3.x )์„ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๊ฐ€ ํ™œ์„ฑ ์œ ์ง€ ๊ด€๋ฆฌ ์ค‘์ด๋ฏ€๋กœ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›์ง€๋งŒ ์ด์ „ ํ”„๋กœ์ ํŠธ๋Š” ํ‰์†Œ์™€ ๊ฐ™์ด ๊ณ„์†๋ฉ๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์€ ๋งŽ์€ ์˜๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค! request-promise ๊ฐ€์กฑ์—๊ฒŒ๋„ ์ด ์ •์ฑ…์„ ์ฒœ์ฒœํžˆ ์ฑ„ํƒํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋…ธ๋“œ ์ƒํƒœ๊ณ„์— ๋Œ€ํ•œ ๊ท€ํ•˜์˜ ์ค‘์š”ํ•œ ๊ธฐ์—ฌ๋ฅผ ์‘์›ํ•ฉ๋‹ˆ๋‹ค!

์ตœ์‹  npm ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๊ฒŒ์‹œํ•  ๋•Œ ์ž๋™์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋น„์ถ”์ฒœ์— ์ฃผ์˜ํ•ด ์ฃผ์„ธ์š”. Mikael์ด ์œ„์—์„œ ์ผ๋“ฏ์ด request ์— ๋”ฐ๋ผ 41K ๋ชจ๋“ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋“ˆ ์ค‘ ์ƒ๋‹น์ˆ˜๋Š” ํ˜„์žฌ ์ƒํƒœ์—์„œ ์œ ์šฉํ•˜๊ณ  ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž˜ ์ž‘๋™ํ•˜์ง€๋งŒ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋Š” request ์ด์™ธ์˜ ๋‹ค๋ฅธ ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ํ•ด๋‹น ๋ชจ๋“ˆ์„ ์žฌ์ž‘์—…ํ•  ์‹œ๊ฐ„์ด ์—†์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์„ค์น˜ ์‹œ request ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ์œผ๋กœ์จ ๊ธฐ๋ณธ์ ์œผ๋กœ npm ๋ชจ๋“ˆ ์—์ฝ”์‹œ์Šคํ…œ์˜ ๋งŽ์€ ๋ถ€๋ถ„์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๋ณผ ๋•Œ ์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ๋Š” ์‚ฌ์šฉ ์ค‘๋‹จ๊ณผ ๋™์ผํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  • ์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ = ์ด ํŒจํ‚ค์ง€๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ฒ„๊ทธ ๋ฐ ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ ์ค‘๋‹จ = ์•„๋ฌด๋„ ์ด ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋ชจ๋“ˆ์ด ์ค‘๋‹จ๋˜์–ด ๋” ์ด์ƒ ๋ฒ„๊ทธ๋‚˜ ๋ณด์•ˆ ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ฐ›์ง€ ๋ชปํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋‹น์‹ ์„ ๋“ฃ์Šต๋‹ˆ๋‹ค. ์ „์ฒด ํ…์ŠคํŠธ

์ตœ์‹  npm ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ci __(์ง€์›์ด ์ค‘์ง€๋œ ํ›„์ผ ์ˆ˜ ์žˆ์Œ)__๋ฅผ ํ†ตํ•ด ๊ฒŒ์‹œํ•  ๋•Œ ์ž๋™์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ์—์„œ ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์›ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๊ฒฐ๊ตญ request ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
๋‚˜๋Š” ๋ฌธ์ œ์™€ prs๋ฅผ ์šฐ๋ฆฌ๊ฐ€ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ชฉ๋ก์œผ๋กœ ๋ถ„๋ฅ˜ํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ–ˆ์ง€๋งŒ ์ฃผ์š” ๋ณ€๊ฒฝ ์—†์ด๋Š” ์ˆ˜์ •ํ•  ์ˆ˜ ์—†๋Š” ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์ง€ ์•Š๊ณ  ์ƒˆ๋กœ์šด ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ ๋ฆฌ๋””๋ ‰์…˜์€ ์š”์ฒญ ๋ณธ๋ฌธ๊ณผ ์ฟ ํ‚ค๋ฅผ ๋Š์Šจํ•˜๊ฒŒ ํ•˜๊ณ  ์ƒ๋Œ€ ๊ฒฝ๋กœ๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•œ URL ๊ตฌ๋ฌธ ๋ถ„์„์€ ๋ชจ๋‘ ๋ฒ„๊ทธ์ด์ง€๋งŒ ์ˆ˜์ •๋ ์ง€๋Š” ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์•„๋งˆ๋„ deprecation์ด ์ •๋‹ต์ด ์•„๋‹ ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ์ ‘๊ทผํ•˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์„ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ง์ด ๋ผ?

๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ๋•Œ ์ฃผ์š” ๋ฒ„์ „์„ ์ถฉ๋Œ์‹œํ‚ค์ž. ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ์— ์˜์กดํ•˜๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์ด ์ƒˆ๋กœ์šด ์ „๊ณต์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ ค๊ณ  ํ•  ๋•Œ๊นŒ์ง€ ์ด ์˜ค๋ฅ˜๋ฅผ ๋ณผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

request ์˜ ์—ญ์‚ฌ์— ์ฐธ์—ฌํ•˜๊ฒŒ ๋œ ๊ฒƒ์„ ์ž๋ž‘์Šค๋Ÿฝ๊ฒŒ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. bent ๋„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์žฌ๋ฏธ์žˆ์–ด ๋ณด์ด๋„ค์š”. ์š”์ฆ˜ ๋‚˜์—๊ฒŒ ๋” ์ค‘์š”ํ•œ _small_์ž…๋‹ˆ๋‹ค.

์ปค๋ฐ‹ ๊ถŒํ•œ์ด ์‚ฌ์‹ค์ƒ npm ๊ฒŒ์‹œ ๊ถŒํ•œ์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„ํ™œ์„ฑ ๊ณต๋™ ์ž‘์—…์ž๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  2fa๋ฅผ ์‹œํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ์—์„œ ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์›ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ๊ฒฐ๊ตญ ์š”์ฒญ์„ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“ˆ์— ๋Œ€ํ•ด ๋งค์šฐ ๊ฐ์‚ฌํ•˜๊ณ  ํ•ญ์ƒ ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๋กœ์„œ ๋‚˜๋Š” ์ƒˆ ํ”„๋กœ์ ํŠธ์—์„œ ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์ด ๊ฒฐ์ •์€ ๋งค์šฐ ์–ด๋ ค์šด ๊ฒฐ์ •์ด์—ˆ์„ ๊ฒƒ์ด์ง€๋งŒ ๊ทน๋‹จ์ ์œผ๋กœ ์นญ์ฐฌํ•  ๋งŒํ•ฉ๋‹ˆ๋‹ค. ์ž˜ ํ–ˆ์–ด์š”.

์ด ๋†€๋ผ์šด ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒƒ์ด ์ž๋ž‘์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๊ฐœ์„ ํ•˜๋„๋ก ๊ฐ•์š”ํ–ˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ™
์œ ์ง€ ๊ด€๋ฆฌ์— ๋„์›€์ด ํ•„์š”ํ•˜๋ฉด ์ฃผ์ €ํ•˜์ง€ ๋ง๊ณ  ์ €์—๊ฒŒ ์—ฐ๋ฝํ•˜์‹ญ์‹œ์˜ค.

๋‚˜๋Š” ๋‹น์‹ ์˜ ๊ฒฐ์ •์„ ์กด์ค‘ํ•˜์ง€๋งŒ, ํ˜„์žฌ ์‹ค์ œ ์„ธ๊ณ„, ํ”„๋กœ๋•์…˜, ์ฝ”๋“œ๊ฐ€ ์š”์ฒญ์— ์–ผ๋งˆ๋‚˜ ์˜์กดํ•˜๋Š”์ง€ ์ƒ๊ฐํ•ด ๋ณด์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. NPM ํ†ต๊ณ„๊ฐ€ ๋งํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋” ๋งŽ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ƒˆ๋กœ์šด ๊ฒƒ์„ ์ถ”๊ตฌํ•˜๊ณ  ์ƒˆ๋กญ๊ณ  ๋” ํฅ๋ฏธ๋กœ์šด ๋ฐฉ์‹์œผ๋กœ ๋ฌด์–ธ๊ฐ€๋ฅผ ํ•˜๊ณ  ์‹ถ๋‹ค๋Š” ๊ฒƒ์„ ์ถฉ๋ถ„ํžˆ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๊ฒฐ๊ตญ ์ƒˆ๋กœ์šด ๊ฒƒ์„ ์ถ”๊ตฌํ•ด์•ผ ํ•˜๋Š” JavaScript ์ƒํƒœ๊ณ„์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ „๋ฌธ ์—”์ง€๋‹ˆ์–ด๋ง ์กฐ์ง์— ๋Œ€ํ•œ ์ „๋ฉด์ ์ธ ์ง€์› ์ค‘๋‹จ ์š”์ฒญ์œผ๋กœ ์ธํ•ด ๋น„์šฉ์ด ๋งŽ์ด ๋“œ๋Š” ์‹œ๊ฐ„๊ณผ ๋น„์šฉ์„ ๊ณ ๋ คํ•˜์‹ญ์‹œ์˜ค. ์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ๋กœ ๋‘๋ ค๋ฉด ๊ดœ์ฐฎ์ง€๋งŒ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ณ€๊ฒฝํ•  ์‹ค์งˆ์ ์ธ ์ด์œ ๊ฐ€ ์ „ํ˜€ ์—†๋‹ค๋Š” ๊ฒƒ์„ ์ดํ•ดํ•˜์‹ญ์‹œ์˜ค. ์ด๋… ๋•Œ๋ฌธ์— ์‚ฌ๋žŒ์„ ๋ฐ”๊พธ๋ผ๊ณ  ๊ฐ•์š”ํ•˜๋Š” ๊ฒƒ์€ ์ขŒ์ ˆ๋กœ ์ด์–ด์ง„๋‹ค.

๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๋ชจ๋‘๊ฐ€ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋“ค์ธ ๋…ธ๊ณ ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

์–ด๋–ค ๋„์„œ๊ด€์ด ํ˜„๋Œ€์ ์ด๋ฉฐ ํ˜„์žฌ ์ถ”์ฒœ๋  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. Superagent๋Š” ํ˜„์žฌ ๋Œ€๋ถ€๋ถ„ ์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ์— ์žˆ์œผ๋ฉฐ axios๋Š” ๊ทธ๋‹ค์ง€ ํ™œ์„ฑํ™”๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด ๋ชจ๋“ˆ์— ๋Œ€ํ•œ ์ˆ˜๋…„๊ฐ„ ๋ชจ๋“  ๋…ธ๋ ฅ์— ๋Œ€ํ•ด (๋ฐ ๋‹ค๋ฅธ ๋ชจ๋“  ๊ธฐ์—ฌ์ž์—๊ฒŒ) ๊ฐ์‚ฌํ•˜๋‹ค๋Š” ์งง์€ ๋ฉ”๋ชจ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋‚ด๊ฐ€ Node๋ฅผ ์‹œ์ž‘ํ•  ๋•Œ ์‚ฌ์šฉํ•œ ์ฒซ ๋ฒˆ์งธ ๊ฒƒ ์ค‘ ํ•˜๋‚˜์ด๋ฏ€๋กœ ํ•ญ์ƒ ๋‚ด ๋งˆ์Œ์— ํŠน๋ณ„ํ•œ ์ž๋ฆฌ๋ฅผ ๊ฐ€์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ๋•Œ ์ฃผ์š” ๋ฒ„์ „์„ ์ถฉ๋Œ์‹œํ‚ค์ž. ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ์— ์˜์กดํ•˜๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์ด ์ƒˆ๋กœ์šด ์ „๊ณต์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ ค๊ณ  ํ•  ๋•Œ๊นŒ์ง€ ์ด ์˜ค๋ฅ˜๋ฅผ ๋ณผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๊ฒƒ์ด ์œ„์˜ ์–ธ๊ธ‰์— ๋Œ€ํ•ด ์—ฌ์ „ํžˆ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์†”๋ฃจ์…˜์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

@kibertoad @mikeal ์ด https://github.com/mikeal/bent ์—์„œ ์ž‘์—… ์ค‘์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค . ์ €๋Š” ์ˆ˜๋…„๊ฐ„ https://github.com/sindresorhus/got ์„ ์‚ฌ์šฉํ•ด ์™”์œผ๋ฉฐ ์ž˜ ์ง€์›๋˜๊ณ  ๋ฐœ์ „ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ชจ๋“  ์ด์•ผ๊ธฐ์™€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ๊ฐ€๋Šฅ์„ฑ์œผ๋กœ ์ธํ•ด ๋ณ‘๋ ฌ ์œ ํ‹ธ๋ฆฌํ‹ฐ์˜ ํ˜„์žฌ ์„ฑ์ˆ™ ๋Œ€์ฒด ๋ชจ๋“ˆ์— ๋Œ€ํ•ด ๋™๋“ฑํ•˜๊ฒŒ ์–ธ๊ธ‰ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์˜ ๋์„ ๋ฐœํ‘œํ•˜๊ณ  ์•„๋ฌด ๊ฒƒ๋„ ์ œ์•ˆํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ํ›จ์”ฌ ๋œ ์„ฑ์ˆ™ํ•˜๊ณ  ์ž์‹ ๊ฐ์„ ๋Œ€์ฒดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์€ ์‹ฌ๊ฐํ•œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์™œ ์ค‘์š”ํ•ฉ๋‹ˆ๊นŒ? ๋ชจ๋“  "ํ•ต์‹ฌ์— ์žˆ๋Š” ์˜ค๋ž˜๋œ ํŒจํ„ด"์— ๋Œ€ํ•ด ์ˆ˜์ฒœ ๋…„ ๋™์•ˆ ๋งค์ผ ์ž‘๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์™„๋ฒฝํ•œ ์„ธ๊ณ„๊ฐ€ ์•„๋‹ˆ๋ผ ํ˜„์‹ค ์„ธ๊ณ„์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์š”์ฒญ์ด ์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ๋กœ ์ „ํ™˜๋˜๊ฑฐ๋‚˜ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋‚ ์˜ ์‹ค์ œ ๊ต์ฒด๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ๊ทธ๊ฒƒ์€ ํ•„์ˆ˜์ž…๋‹ˆ๋‹ค.

https://github.com/request/request/issues/3143์—์„œ ํ•ด๋‹น ํ† ๋ก ์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ์ž‘์—… ๊ณ„ํš(์ง์ ‘ ํ”ผ๋“œ๋ฐฑ ํ™˜์˜)์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142#issuecomment -478303334

request ์ž‘์—…์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

์š”์ฒญ์˜ ํ•ต์‹ฌ์— ์žˆ๋Š” ํŒจํ„ด์ด ์˜ค๋ž˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํŒจํ„ด์€ ํŠนํžˆ JavaScript ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ๋ช‡ ๊ฐœ์›” ๋ฐ ๋ช‡ ๋…„๋งˆ๋‹ค ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค. request ๊ฐ€ ์›๋ž˜ ์ƒ์„ฑ๋œ ์ด์œ ๋Š” ์˜ค๋Š˜๋‚ ์—๋„ ์œ ํšจํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

request ๋Š” 10๋…„ ๊ฐ„์˜ ์ปค๋ฐ‹, ์•ˆ์ •์„ฑ ๋ฐ ํ…Œ์ŠคํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์™œ ์ฒ˜์Œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๊นŒ? ์ด๊ฒƒ์€ ๋” ๋งŽ์€ "JavaScript ํ”ผ๋กœ"๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๋” ๋งŽ์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ HTTP ์š”์ฒญ๊ณผ ๊ฐ™์€ ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ ์•„๋‹™๋‹ˆ๊นŒ?

2019๋…„์—๋Š” ์ŠคํŠธ๋ฆผ๊ณผ ์ฝœ๋ฐฑ์ด ๋” ์ด์ƒ ํ™”๋ คํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— Node์˜ ์—ญ์‚ฌ์—์„œ ๊ทธ๋ ‡๊ฒŒ ์ค‘์š”ํ•˜๊ณ  ์—ญ์‚ฌ์ ์ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์‚ฌ๋ผ์ง€๋Š” ๊ฒƒ์„ ๋ณด๋Š” ๊ฒƒ์€ ์Šฌํ”ˆ ์ผ์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ deprecatingํ•˜๋Š” ๊ฒƒ์ด ์ •๋ง๋กœ ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์•ฝ 10๋…„ ๋™์•ˆ ์‚ฌ์šฉ๋˜์–ด ์™”์œผ๋ฉฐ ๋งŽ์€ ๊ณณ์—์„œ ์‚ฌ์šฉ๋˜๊ณ  ์‹ค์ œ๋กœ ๊ฝค ์•ˆ์ •์ ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฒฐ๊ตญ์—๋Š”. HTTP ์š”์ฒญ๋งŒ ํ•˜๋ฉด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋ฌด์—‡์ด ๋” ํ•„์š”ํ• ๊นŒ์š”? ์ด๋‹ฌ์˜ JS ์œ ํ–‰์— ๋Œ€ํ•œ ์ง€์›์€? ๐Ÿ‘Ž

์—ฌ์ „ํžˆ ํ™œ์„ฑ ์ƒํƒœ์ธ ์ปค๋ฏธํ„ฐ๋Š” ์ ์‹œ์— ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ณ‘ํ•ฉํ•˜๋ ค๊ณ  ์‹œ๋„ ํ•˜์ง€๋งŒ ์•ฝ์† ์€

๋ฐ”๋ค ์‰ฟ! ๐Ÿฅ

์ด๊ฒƒ์€ ์ฑ…์ž„ ์žˆ๋Š” ์‚ฌ์šฉ ์ค‘๋‹จ์ž…๋‹ˆ๋‹ค. ์˜์‚ฌ ์†Œํ†ต์ด ์ž˜๋˜์–ด ๊ณ„์† ์ง„ํ–‰ํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ OSS ์œ ์ง€ ๊ด€๋ฆฌ์ž๊ฐ€ ์ด๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ์‚ผ๋Š” ํ‘œ์ค€์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ํŒจํ‚ค์ง€๋ฅผ ์žŠ๊ณ  ์ž„์˜์˜ ์‚ฌ๋žŒ๋“ค(์ฝ”๋“œ์— ๋ฐฑ๋„์–ด๋ฅผ ์‚ฝ์ž…ํ•  ์ˆ˜ ์žˆ๋Š”)์„ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋กœ ํ—ˆ์šฉํ•˜์—ฌ ๋” ์ด์ƒ ์‹ ๊ฒฝ ์“ฐ์ง€ ์•Š์„ ๋•Œ ์ธ๊ณ„๋ฐ›๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋‚ซ์Šต๋‹ˆ๋‹ค.

์š”์ฒญ์€ ํ›Œ๋ฅญํ•œ ํŒจํ‚ค์ง€์˜€์œผ๋ฉฐ ์ดˆ๊ธฐ ๋…ธ๋“œ ์ƒํƒœ๊ณ„์— ๋Œ€ํ•œ ๊ท€ํ•˜์˜ ๊ณตํ—Œ์— ๋Œ€ํ•ด ๋Œ€๋‹จํžˆ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ฝœ๋ฐฑ ์Šคํƒ€์ผ์ด ๋” ์ด์ƒ ๊ด€์šฉ์ ์ธ JavaScript๊ฐ€ ์•„๋‹ˆ๋ฉฐ WHATWG ํ‘œ์ค€์„ ๋ฐ˜์˜ํ•˜๋Š” fetch์™€ ๊ฐ™์€ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€๊ฐ€ ์žˆ๋‹ค๋Š” ํ‰๊ฐ€๊ฐ€ ์˜ณ์Šต๋‹ˆ๋‹ค.

@stcktrce ์ •ํ™•ํžˆ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋‹ค๋ฅธ ๊ฒƒ์ด ํ•„์š”ํ•˜์ง€ ์•Š์œผ๋ฉฐ ๊ทธ๋Œ€๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ „์ฒด ์ƒํƒœ๊ณ„์—์„œ ์ค‘์š”ํ•œ ๊ฐœ์„ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์€ ๋‹จ์ˆœํžˆ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์˜์กดํ•˜๋Š” ๋Œ€์‹  ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ์ƒˆ๋กญ๊ณ  ๋” ํ˜„๋Œ€์ ์ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@mikeal ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ( r2 ๋„)์™€ ์ƒํƒœ๊ณ„์— ๋Œ€ํ•œ ๋ชจ๋“  ๋…ธ๋ ฅ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋˜ํ•œ ์ƒํƒœ๊ณ„์—์„œ ์ž˜ ์ƒ๊ฐํ•˜๊ณ  ๊ณ„ํš๋œ ์‚ฌ์šฉ ์ค‘๋‹จ์˜ ์šฐ์„  ์ˆœ์œ„๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ๋•Œ ์ฃผ์š” ๋ฒ„์ „์„ ์ถฉ๋Œ์‹œํ‚ค์ž. ๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ์— ์˜์กดํ•˜๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์ด ์ƒˆ๋กœ์šด ์ „๊ณต์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ ค๊ณ  ํ•  ๋•Œ๊นŒ์ง€ ์ด ์˜ค๋ฅ˜๋ฅผ ๋ณผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

@mikeal ์ข‹์€ ์ƒ๊ฐ์ด ์•„๋‹Œ ๊ฒƒ ๊ฐ™์•„์š”.

๋ฌธ์ œ๋Š” ๊ต์ฒดํ’ˆ์˜ ๋Œ€๋ถ€๋ถ„์ด ์š”์ฒญํ•œ ๊ฒƒ๋ณด๋‹ค ํ’ˆ์งˆ์ด ๋‚ฎ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•ฝ ์ผ์ฃผ์ผ ์ „์— axios ์—์„œ request ๋กœ ์ด์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

Axios์—๋Š” ํ”„๋ก์‹œ ์ง€์›, https ์—์ด์ „ํŠธ ์ˆ˜์ • ๋ฐ ์ฒ˜๋ฆฌ๋˜์ง€ ์•Š์€ ์•ฝ์† ์˜ˆ์™ธ์™€ ๊ด€๋ จํ•˜์—ฌ ๋‹ค๋…„๊ฐ„ ์ง€์†๋˜๋Š” ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. axios์— ํฌ๊ฒŒ ํˆฌ์žํ•œ ํ›„์—์•ผ ์ด๋Ÿฌํ•œ ์‚ฌ์‹ค์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ๋กœ์šด ์‚ฌ์šฉ์ž์—๊ฒŒ axios๋Š” ํ‘œ๋ฉด์ ์œผ๋กœ ์š”์ฒญ๋งŒํผ ์ข‹์•„ ๋ณด์ž…๋‹ˆ๋‹ค(์œ ์‚ฌํ•œ ์‚ฌ์šฉ์ž ์ˆ˜, ๋””์ž์ธ์— ๋”ฐ๋ฅธ ์•ฝ์† ๋“ฑ).

request ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค :)

ํ”Œ๋Ÿฌ๊ทธ์ธ ๊ฐ€๋Šฅํ•œ ํ•„ํ„ฐ์™€ ์ŠคํŠธ๋ฆผ์— ๋Œ€ํ•œ ์šฐ์ˆ˜ํ•œ ์ง€์›์ด ์žˆ๋Š” ์ตœ์†Œํ•œ์˜ ์•ฝ์† ๊ธฐ๋ฐ˜ HTTP ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ฐพ๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ์ด ์žˆ๋‹ค๋ฉด httplease ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ƒ์‚ฐ์—์„œ ๋ช‡ ๋…„ ๋™์•ˆ ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

์š”์ฒญ ๋ชจ๋“ˆ์ด ๋งˆ์Œ์— ๋“ญ๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
๋‹ค๋ฅธ ๋™์ผํ•œ ์ƒˆ ๋ชจ๋“ˆ์ด ๋‚˜์˜ค๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์š”์ฒญ์— ๋„ˆ๋ฌด ๋งŽ์€ ์ดˆ์ ์„ ๋งž์ถ”๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ?

๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์œ ์‚ฌํ•œ ๊ธฐ๋Šฅ์— ํŠน์ • ๋ฒ„๊ทธ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๊ตฌ์ฒด์ ์œผ๋กœ ์‹๋ณ„ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ํ”„๋ก์‹œ ์ง€์›์€ ๋ณต์žกํ•œ ๊ธฐ๋Šฅ์ด๋ฉฐ ์š”์ฒญ์€ ํ†ต๊ณผํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์‹คํŒจํ•˜๋Š” ํ…Œ์ŠคํŠธ ์‚ฌ๋ก€๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์€ ๋งค์šฐ ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

@reconbot ์ตœ์‹  axios (^0.18.0) https ์‚ฌ์ดํŠธ์— ํ”„๋ก์‹œ ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ์—ฐ๊ฒฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด EPROTO ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ด๊ฒƒ์— ๊ด€ํ•œ ๊ณต๊ฐœ ๋ฒ„๊ทธ์ด์ง€๋งŒ ๋ฌธ์ œ๋Š” ๋ช‡ ๋…„ ์ „์œผ๋กœ ๊ฑฐ์Šฌ๋Ÿฌ ์˜ฌ๋ผ๊ฐ‘๋‹ˆ๋‹ค. https://github.com/axios/axios/issues/1981

ํŽธ์ง‘: ํŠนํžˆ axios๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ http ํ”„๋ก์‹œ๋ฅผ ํ†ตํ•ด https ์š”์ฒญ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์•„๋งˆ๋„ ์ „์šฉ https ํ”„๋ก์‹œ๊ฐ€ ์ž‘๋™ํ•˜์ง€๋งŒ ์‹œ๋„ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ˆ˜์ • ์‚ฌํ•ญ์ด ์ตœ๋Œ€ ์‘๋‹ต ํฌ๊ธฐ(Maximum Response Size)์— ๋Œ€ํ•œ ํ’€ ๋ฆฌํ€˜์ŠคํŠธ์™€ ๊ฐ™์€ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์œผ๋กœ ๊ฐ„์ฃผ๋˜์ง€ ์•Š๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋˜ํ•œ ๋‚˜๋Š” ์ด๊ฒƒ์„ ์„ ํƒํ•˜๊ธฐ ์ „์— ๋‹ค๋ฅธ ์š”์ฒญ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฒ€ํ† ํ–ˆ์œผ๋ฉฐ ๋Œ€๋ถ€๋ถ„์€ ๋งค์šฐ ๋ฌธ์ œ๊ฐ€ ๋งŽ๊ณ  ๋ถˆ์™„์ „ํ•˜๋ฉฐ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์˜ ๋ฌธ์„œ๋„ ์ธก์ •ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์—†์ง€๋งŒ ํ…Œ์ŠคํŠธ๋˜์ง€ ์•Š์€ ์ฝ”๋“œ์™€ ๋ฒ„๊ทธ๋Š” ์—†์ง€๋งŒ HTTP ์š”์ฒญ์„ ๋งŒ๋“œ๋Š” ์ƒˆ๋กœ์šด ์ ‘๊ทผ ๋ฐฉ์‹์ด ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. http/https ๋ชจ๋“ˆ์„ ๋ž˜ํ•‘ํ•˜๊ณ  ๋ฒ„ํผ๋ง ์‘๋‹ต, ์‘๋‹ต ๋””์ฝ”๋”ฉ ๋ฐ ๋ฌผ๋ก  ์ „์ฒด๋ฅผ ์•ฝ์†ํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ๊ฐ™์€ ์ •์ƒ์ ์ธ ๊ธฐ๋ณธ๊ฐ’์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์— ๊ด€ํ•œ ๊ฒƒ ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ฐ€์žฅ ํฐ ๋ฌธ์ œ๋Š” ์™„์ „ํ•œ ํ˜ธํ™˜์„ฑ์˜ ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค. ๋ ˆ๊ฑฐ์‹œ ํ•ญ๋ชฉ๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์‹œ๋„ํ•˜๋Š” ๊ฒƒ์€ ๊ณ ํ†ต๊ณผ ๋ ˆ๊ฑฐ์‹œ ์ฝ”๋”ฉ ๊ด€ํ–‰์„ ๊ฐ€์ ธ์˜ฌ ๋ฟ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๊ณ ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ์•„ํ•˜๊ณ  ํ˜„๋Œ€์ ์ด๋ฉฐ ๋ฏธ๋‹ˆ๋ฉ€ํ•œ ๊ฒƒ์œผ๋กœ ๋ฆฌํŒฉํ† ๋งํ•  ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ๊ธฐ๋ฐ˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฌด์—‡๋ณด๋‹ค ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์—๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ํŒŒ์ผ๋กœ ๋ถ„ํ• ํ•˜๊ณ , Babel ๋˜๋Š” Typescript์™€ ํ•จ๊ป˜ ECMA6์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ •์ƒ์ ์ธ ๊ฐœ๋ฐœ์ž๋Š” ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์ด ์—†๊ณ  ๋ฒ„๊ทธ๊ฐ€ ์žˆ๊ณ  ๋ฌธ์„œํ™”๋˜์ง€ ์•Š์€ 10๊ฐœ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์‹ค์ œ๋กœ ์ž‘๋™ํ•˜๋ฉฐ ์ €๋Š” ๊ฐ์‚ฌํ•˜๋ฉฐ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ณ  ๋Œ€์‹  ๋ถ€ํ™œํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์ˆ˜์ • ์‚ฌํ•ญ์€ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์œผ๋กœ ๊ฐ„์ฃผ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ˆ˜์ • ์‚ฌํ•ญ์€ ์ตœ์†Œ 1๋…„, ์•„๋งˆ๋„ ๋” ์˜ค๋ž˜ ๋™์•ˆ ๋ณ‘ํ•ฉ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

-๋งˆ์ดํด


๋ณด๋‚ธ ์‚ฌ๋žŒ: mivanovaxway [email protected]
๋ณด๋‚ธ ๋‚ ์งœ: 2019๋…„ 4์›” 11์ผ ๋ชฉ์š”์ผ ์˜ค์ „ 2:38
๋ฐ›๋Š” ์‚ฌ๋žŒ: ์š”์ฒญ/์š”์ฒญ
์ฐธ์กฐ: Mikeal Rogers; ์–ธ๊ธ‰ํ•˜๋‹ค
์ œ๋ชฉ: Re: [์š”์ฒญ/์š”์ฒญ] ์š”์ฒญ์˜ ๊ณผ๊ฑฐ, ํ˜„์žฌ ๋ฐ ๋ฏธ๋ž˜ (#3142)

๋‚˜๋Š” ์ˆ˜์ • ์‚ฌํ•ญ์ด ์ตœ๋Œ€ ์‘๋‹ต ํฌ๊ธฐ(Maximum Response Size)์— ๋Œ€ํ•œ ํ’€ ๋ฆฌํ€˜์ŠคํŠธ์™€ ๊ฐ™์€ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์œผ๋กœ ๊ฐ„์ฃผ๋˜์ง€ ์•Š๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋˜ํ•œ ๋‚˜๋Š” ์ด๊ฒƒ์„ ์„ ํƒํ•˜๊ธฐ ์ „์— ๋‹ค๋ฅธ ์š”์ฒญ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ฒ€ํ† ํ–ˆ์œผ๋ฉฐ ๋Œ€๋ถ€๋ถ„์€ ๋งค์šฐ ๋ฌธ์ œ๊ฐ€ ๋งŽ๊ณ  ๋ถˆ์™„์ „ํ•˜๋ฉฐ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์˜ ๋ฌธ์„œ๋„ ์ธก์ •ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์—†์ง€๋งŒ ํ…Œ์ŠคํŠธ๋˜์ง€ ์•Š์€ ์ฝ”๋“œ์™€ ๋ฒ„๊ทธ๋Š” ์—†์ง€๋งŒ HTTP ์š”์ฒญ์„ ๋งŒ๋“œ๋Š” ์ƒˆ๋กœ์šด ์ ‘๊ทผ ๋ฐฉ์‹์ด ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. http/https ๋ชจ๋“ˆ์„ ๋ž˜ํ•‘ํ•˜๊ณ  ์‘๋‹ต ๋ฒ„ํผ๋ง, ์‘๋‹ต ๋””์ฝ”๋”ฉ ๋ฐ ๋ฌผ๋ก  ์ „์ฒด๋ฅผ ์•ฝ์†ํ•˜๋Š” ๊ธฐ๋Šฅ๊ณผ ๊ฐ™์€ ์ •์ƒ์ ์ธ ๊ธฐ๋ณธ๊ฐ’์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ฐ€์žฅ ํฐ ๋ฌธ์ œ๋Š” ์™„์ „ํ•œ ํ˜ธํ™˜์„ฑ์˜ ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค. ๋ ˆ๊ฑฐ์‹œ ํ•ญ๋ชฉ๊ณผ์˜ ํ˜ธํ™˜์„ฑ์„ ์‹œ๋„ํ•˜๋Š” ๊ฒƒ์€ ๊ณ ํ†ต๊ณผ ๋ ˆ๊ฑฐ์‹œ ์ฝ”๋”ฉ ๊ด€ํ–‰์„ ๊ฐ€์ ธ์˜ฌ ๋ฟ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๊ฒƒ์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ๊ณ ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ์•„ํ•˜๊ณ  ํ˜„๋Œ€์ ์ด๋ฉฐ ๋ฏธ๋‹ˆ๋ฉ€ํ•œ ๊ฒƒ์œผ๋กœ ๋ฆฌํŒฉํ† ๋งํ•  ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ๊ธฐ๋ฐ˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฌด์—‡๋ณด๋‹ค ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์—๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ํŒŒ์ผ๋กœ ๋ถ„ํ• ํ•˜๊ณ , Babel ๋˜๋Š” Typescript์™€ ํ•จ๊ป˜ ECMA6์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์ •์ƒ์ ์ธ ๊ฐœ๋ฐœ์ž๋Š” ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์ด ์—†๊ณ  ๋ฒ„๊ทธ๊ฐ€ ์žˆ๊ณ  ๋ฌธ์„œํ™”๋˜์ง€ ์•Š์€ 10๊ฐœ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์›ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์‹ค์ œ๋กœ ์ž‘๋™ํ•˜๋ฉฐ ์ €๋Š” ๊ฐ์‚ฌํ•˜๋ฉฐ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ณ  ๋Œ€์‹  ๋ถ€ํ™œํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ฑฐ๋‚˜ GitHub https://github.com/request/request/issues/3142#issuecomment-482043697 ๋˜๋Š” ์Šค๋ ˆ๋“œ https://github.com/notifications/unsubscribe-auth/AAACQ8I4BSRtOjqHk637gRfBhkvGbRr4๋ฅผ ์Œ์†Œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

TIL 41k ํŒจํ‚ค์ง€๊ฐ€ ์ทจ์•ฝํ•ด์กŒ์Šต๋‹ˆ๋‹ค.

๋ด, ๋‚˜๋Š” ์š”์ฒญ์ด ์—†์–ด์ ธ์•ผ ํ•œ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•˜์ง€๋งŒ, ๋‚˜๋Š” ํ•ญ์ƒ ์ด์™€ ๊ฐ™์€ ์ฃผ๋ฅ˜ ํŒจํ‚ค์ง€๊ฐ€ ๋ฆด๋ฆฌ์Šค ํŒŒ์ดํ”„๋ผ์ธ์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์„ ๋‘๋ ค์›Œํ•ฉ๋‹ˆ๋‹ค. ์•…์„ฑ ์ฝ”๋“œ๋ฅผ ๊ฒŒ์‹œํ•˜๋Š” ์•…์˜์ ์ธ ํ–‰์œ„์ž ๋˜๋Š” ์†์ƒ๋œ ๊ฐœ๋ฐœ ์ƒ์ž๊ฐ€ ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์— ํšจ๊ณผ์ ์œผ๋กœ ํผ์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

npm ํ‘ธ์‹œ ์š”๊ตฌ ์‚ฌํ•ญ์„ ๊ฐ•ํ™”ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•˜์‹ญ์‹œ์˜ค. ci์— ๋Œ€ํ•œ ๋ถ„๊ธฐ๋ฅผ ์„ค์ •ํ•˜๊ณ  ์—ฌ๋Ÿฌ ์Šน์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋‹จ์ˆœํžˆ ๋งˆ์Šคํ„ฐ๋กœ ๋ฐ€์–ด๋ถ™์ด๋Š” ๊ฒƒ ์ด์ƒ์˜ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜๋„ ์•ฝ์†์€ ์—†์Šต๋‹ˆ๋‹ค.

๋ง์žฅ๋‚œ? ๐Ÿคฃ

๋™์ผํ•œ ๋…ผ๋ฆฌ์  ์ถ”๋ก ์„ expressjs์— ์ ์šฉํ•ด์•ผ ํ• ๊นŒ์š”? ์š”์ฒญ์— ๋Œ€ํ•ด ์ด์ œ ์ƒˆ๋กœ์šด ๋น›๋‚˜๋Š” got ๋ชจ๋“ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ ์ž‘์„ฑํ•˜๊ฑฐ๋‚˜ expressjs์— ๋Œ€ํ•œ ์ง„์ •ํ•œ ๋Œ€์•ˆ์€ ์—†์Šต๋‹ˆ๋‹ค.

express๋Š” ํ›Œ๋ฅญํ•˜์ง€๋งŒ ์ตœ๊ทผ ๋ช‡ ๋…„ ๋™์•ˆ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์œผ๋กœ ์ ๊ทน์ ์œผ๋กœ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

express๋Š” ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์œผ๋กœ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์ ๊ทน์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌ๋˜๋ฉฐ ๋งˆ์ง€๋ง‰์œผ๋กœ ํ™•์ธํ–ˆ์„ ๋•Œ ์—ฌ์ „ํžˆ ํ•ด๋‹น ์ž‘์—…์— ๊ด€์‹ฌ์ด ์žˆ๋Š” ์†Œ์ˆ˜์˜ ์‚ฌ๋žŒ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€์› ์ค‘๋‹จ์„ ์œ„ํ•ด ์ทจํ•œ ์กฐ์น˜๋ฅผ ์ทจํ•ด์•ผ ํ•˜๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

@laoshaw request ์™€ ๋ฌด์Šจ ์ƒ๊ด€์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์™„์ „ํ•œ ์ง€์› ์ค‘๋‹จ์„ ์ค€๋น„ ์ค‘์ž…๋‹ˆ๋‹ค. https://github.com/request/request/pull/3267

์šฐ๋ฆฌ๋Š” ์™„์ „ํžˆ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค!

npm์˜ ๋ชจ๋“  ๋ฒ„์ „์€ ์‚ฌ์šฉ ์ค‘๋‹จ์„ ๊ธฐ๋กํ•˜๊ณ  README๋Š” request ๊ฐ€ ์‚ฌ์šฉ ์ค‘๋‹จ๋˜์—ˆ์Œ์„ ๋ถ„๋ช…ํžˆ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.

์ง€๋‚œ 10๋…„ ๋™์•ˆ ๊ณตํ—Œํ•œ ๋ชจ๋“  ๋ถ„๋“ค ๋•๋ถ„์— 10๋…„์ด ๋„˜๋Š” ์‹œ๊ฐ„์„ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค. JS ์–ธ์–ด์™€ ์ƒํƒœ๊ณ„์—์„œ ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š” ๋ณ€ํ™”์— ๋” ์ž˜ ๋งž๋Š” ์ƒˆ๋กœ์šด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ธฐ๋Œ€ํ•ฉ์‹œ๋‹ค.

๊ทธ๋ž˜์„œ SPECIFIC์„ ์–ป์Šต๋‹ˆ๋‹ค.
์š”์ฒญ ๋ชจ๋“ˆ์— ๋Œ€ํ•œ ๋ฆฐ ์ฝ”๋“œ ๋Œ€์ฒด๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์ฃฝ์€ ๊ป์งˆ์— ๋งค๋‹ฌ๋ฆฐ ์ฑ„๋กœ ๋‘์–ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค.... ๋” ๋‚˜์€ ์˜ต์…˜์ด ๋„ˆ๋ฌด ๋งŽ์Šต๋‹ˆ๋‹ค... ์–ด๋–ค ์˜ต์…˜์ด ์ข‹์„๊นŒ์š”?
GRAND๊ฐ€ ํƒœ์–‘ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ/๋ชจ๋“ˆ ์•„๋ž˜์—์„œ ๋ชจ๋“  ๊ฒƒ์„ ์ˆ˜ํ–‰ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

@riclf ์šฐ๋ฆฌ๋Š” https://github.com/googleapis/teeny-request/๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ช‡ ๋…„ ๋™์•ˆ ์š”์ฒญ์„ ๋ฐ›์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์›ํ•˜๋Š” ๋ชจ๋“  ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. :) ํ›„๋“œ ์•„๋ž˜์—์„œ node-fetch ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ›Œ๋ฅญํ•œ ์˜ต์…˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค!

์•ฝ์† ์šฐ์„  ์†”๋ฃจ์…˜์˜ ๊ฒฝ์šฐ API ํ†ต์‹ ์— ์ค‘์ ์„ ๋‘” gofer ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด์žฅ๋œ TCP ์—ฐ๊ฒฐ ์‹œ๊ฐ„ ์ดˆ๊ณผ ์ง€์›, ์—ฌ๋Ÿฌ API์™€ ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•œ ์‰ฌ์šด ๊ตฌ์„ฑ(๋ฐ ํ’๋ถ€ํ•œ ์˜ค๋ฅ˜) ๋“ฑ.

HTTP Long Polling์„ ์ž˜ ์ง€์›ํ•˜๊ณ  ์ŠคํŠธ๋ฆผ ๋˜๋Š” ์ด๋ฒคํŠธ ์ด๋ฏธํ„ฐ๋กœ ์ œ๊ณตํ•˜๋Š” ๋Œ€์ฒด ํด๋ผ์ด์–ธํŠธ์— ๋Œ€ํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ์ด ์žˆ๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

2019๋…„ 4์›”์— ๋งˆ์ง€๋ง‰์œผ๋กœ ํ™•์ธํ–ˆ์„ ๋•Œ got , node-fetch ๋ฐ axios ์™€ ๊ฐ™์€ ๋Œ€์•ˆ์—๋Š” ํฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. Node.js ์ฝ”์–ด์—์„œ ๋ณด๊ณ ๋œ ์œ ์šฉํ•œ ์Šคํƒ ์ถ”์  ๋ฐ http ํด๋ผ์ด์–ธํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋งŒ ๊ฐ€๋ฆฌํ‚ค๋Š” ์Šคํƒ ์ถ”์ ๊ณผ ํ•จ๊ป˜ ์ƒˆ๋กœ์šด ์ƒ์œ„ ์ˆ˜์ค€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ํ”„๋ก์‹œ๊ฐ€ ๊ด€๋ จ๋œ ๊ฒฝ์šฐ์™€ ๊ฐ™์ด ์ „์†ก ์ˆ˜์ค€ ๋ฌธ์ œ๋ฅผ ๋””๋ฒ„๊น…ํ•˜๋Š” ๊ฒƒ์ด ๊ฑฐ์˜ ๋ถˆ๊ฐ€๋Šฅํ–ˆ์Šต๋‹ˆ๋‹ค.

Node.js ์ฝ”์–ด์—์„œ ์ œ๊ณตํ•˜๋Š” ์˜ค๋ฅ˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ์œ ์ง€ํ•˜๋Š” ์ข‹์€ request ๋Œ€์•ˆ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@bajtos gofer ๋Š” ์›๋ž˜ ์˜ค๋ฅ˜๋งŒ ์žฅ์‹ํ•˜์ง€๋งŒ ์Šคํƒ ์ถ”์ ๊ณผ ๋ฉ”์‹œ์ง€๋Š” ๋ณด์กดํ•ด์•ผ ํ•œ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

bent ์—๋Š” ์ข‹์€ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์œผ๋ฉฐ async/await์šฉ์œผ๋กœ ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์—„์ฒญ๋‚˜๊ฒŒ ์ž‘๊ณ  ๋ฒˆ๋“ค ํฌ๊ธฐ๋„ ์•„์ฃผ ์ž‘์Šต๋‹ˆ๋‹ค ;)

API๋Š” ์š”์ฒญ๊ณผ ๋‹ค๋ฅด์ง€ ์•Š์œผ๋ฏ€๋กœ "๋Œ€์ฒด"๋ผ๊ณ  ๋ถ€๋ฅด์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๋‹ค.

@mikeal ์ด๋ฆ„์ด bent ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? (์š”์ฒญ์€ ๊ธฐ์–ตํ•˜๊ธฐ ์‰ฌ์šด ์ด๋ฆ„์ด์—ˆ์Šต๋‹ˆ๋‹ค.)

bent ์—๋Š” ์ข‹์€ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์œผ๋ฉฐ async/await์šฉ์œผ๋กœ ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์—„์ฒญ๋‚˜๊ฒŒ ์ž‘๊ณ  ๋ฒˆ๋“ค ํฌ๊ธฐ๋„ ์•„์ฃผ ์ž‘์Šต๋‹ˆ๋‹ค ;)

API๋Š” ์š”์ฒญ๊ณผ ๋‹ค๋ฅด์ง€ ์•Š์œผ๋ฏ€๋กœ "๋Œ€์ฒด"๋ผ๊ณ  ๋ถ€๋ฅด์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ ๋…ผ๋ฆฌ๋ผ๊ธฐ๋ณด๋‹ค๋Š” ๊ธฐ์ˆ ์ ์œผ๋กœ ์˜ฌ๋ฐ”๋ฅธ ๊ฒƒ์ฒ˜๋Ÿผ ๋Š๊ปด์ง‘๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ๊ด€์ ์—์„œ ๋ฒคํŠธ๋Š” ์š”์ฒญ๊ณผ ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€๋งŒ ๋” ์ข‹์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ ์•„๋ฌด ์ด์œ  ์—†์ด ๋” ๋‚˜์œ ์ด๋ฆ„์œผ๋กœ ๋ถ™์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํฐ ๋ฌธ์ œ์—†์ด ์š”์ฒญ 3์ด๋ผ๊ณ  ๋ถ€๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ, API๊ฐ€ ์ค‘๋‹จ๋˜์ง€๋งŒ ์šฐ๋ฆฌ๊ฐ€ semver๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

ํฐ ๋ฌธ์ œ์—†์ด ์š”์ฒญ 3์ด๋ผ๊ณ  ๋ถ€๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ, API๊ฐ€ ์ค‘๋‹จ๋˜์ง€๋งŒ ์šฐ๋ฆฌ๊ฐ€ semver๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

bent ์™€ ํ•จ๊ป˜ ์‹œ๊ฐ„์„ ๋ณด๋‚ด๋ฉด ๋‹ค๋ฅด๊ฒŒ ๋Š๋‚„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฆ„ ์ง€์ •์ด๋‚˜ ์•ฝ์† ๋Œ€ ์ฝœ๋ฐฑ์˜ ์ž‘์€ ์ฐจ์ด๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์ธ์ฒด ๊ณตํ•™์€ ๋งค์šฐ ๋‹ค๋ฅด๊ณ  ํ‘œ๋ฉด ์ƒํƒœ๋„ ๋งค์šฐ ๋‹ค๋ฅด๋ฉฐ ์˜ค๋ฅ˜ ์กฐ๊ฑด์— ๋Œ€ํ•ด ์ƒ๊ฐํ•˜๋Š” ๋ฐฉ์‹๋„ ๊ทผ๋ณธ์ ์œผ๋กœ ๋‹ค๋ฅธ ์ ‘๊ทผ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

request ๋Š” ์ข€ ๋” ์ ˆ์ฐจ์ ์ธ API์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๋ฌด์–ธ๊ฐ€๋ฅผ ํ•˜๋ผ๊ณ  ์ง€์‹œํ•˜๋ฉด ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚ฌ๋Š”์ง€ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. ๋ณต๊ตฌ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ฒŒ ์‹คํŒจํ•œ ๊ฒฝ์šฐ์—๋งŒ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. bent ์ „์ฒด ๋ผ์ดํ”„ ์‚ฌ์ดํด ๋ฐ˜ํ™˜ ๋‹น์‹ ์—๊ฒŒ ์•„๋ฌด๊ฒƒ๋„ํ•˜์ง€๋งŒ, ์„ฑ๊ณต ๊ธฐ์ค€์ด ์ถฉ์กฑ๋˜๋Š” ๊ฒฝ์šฐ ์‹คํŒจํ•˜๋Š” API๋ฅผ์œ„ํ•œ ์„ฑ๊ณต ๊ธฐ์ค€์„ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋งค์šฐ ๋‹ค๋ฅด๊ฒŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์›ํ•˜๋Š” ๊ฒฝ์šฐ request ์˜ API์— ๋” ๊ฐ€๊นŒ์šด ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์žˆ์ง€๋งŒ HTTP ํด๋ผ์ด์–ธํŠธ์—์„œ ๊ฑฐ์˜ 20๋…„ ๋™์•ˆ ์ž‘์—…ํ•œ ํ›„ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๊ถŒ์žฅํ•  ๋‹ค๋ฅธ ๊ถ๊ทน์ ์œผ๋กœ ๋” ๋‚˜์€ ์ ‘๊ทผ ๋ฐฉ์‹์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค. ๊ณ ๋ คํ•˜๊ธฐ๋Š” ํ•˜์ง€๋งŒ request 3.0์œผ๋กœ ๋งŒ๋“ค์–ด์„œ ๋ชจ๋“  ์‚ฌ๋žŒ์˜ ๋ชฉ์„ ์กฐ๋ฅด์ง€๋Š” ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์™œ ๊ตฌ๋ถ€๋Ÿฌ์ง„ ์ด๋ฆ„์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๊นŒ? (์š”์ฒญ์€ ๊ธฐ์–ตํ•˜๊ธฐ ์‰ฌ์šด ์ด๋ฆ„์ด์—ˆ์Šต๋‹ˆ๋‹ค.)

ํŠน์ • ๋ชจ์–‘(๋งค์šฐ ํŠน๋ณ„ํ•œ ์„ฑ๊ณต ๊ธฐ์ค€)์œผ๋กœ "๊ตฌ๋ถ€๋ฆฌ๊ธฐ" ๋•Œ๋ฌธ์— ํ•ด๋‹น ๋ชจ์–‘์˜ ์„ฑ๊ณต์„ ์œ„ํ•œ ์ด์ƒ์ ์ธ API๋ฅผ ์ œ๊ณตํ•˜๊ณ  ๊ทธ ์™ธ์—๋Š” ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฆ„์€ ๋‹ค์†Œ ์ถ”์ƒ์ ์ด์ง€๋งŒ request ๋Š” ์˜ค๋Š˜๋‚ ์—๋Š” ์–ป์„ ์ˆ˜ ์—†๋Š” ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ๊ฐ„์‹ ํžˆ npm ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— request ๋ฅผ ์–ป์—ˆ๊ณ  ์›๋ณธ npm ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค ๐Ÿ˜œ

๋Œ€์ฒดํ’ˆ์œผ๋กœ "์žˆ์–ด"๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ? ์š”์ฒญ์ด ๊ณต์‹์ ์œผ๋กœ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋™์•ˆ ๋ช…ํ™•ํ•œ ๋Œ€์ฒดํ’ˆ์ด ์—†๋‹ค๋Š” ๊ฒƒ์€ ์œ ๊ฐ์ž…๋‹ˆ๋‹ค.

๋Œ€์ฒดํ’ˆ์œผ๋กœ "์žˆ์–ด"๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ? ์š”์ฒญ์ด ๊ณต์‹์ ์œผ๋กœ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋™์•ˆ ๋ช…ํ™•ํ•œ ๋Œ€์ฒดํ’ˆ์ด ์—†๋‹ค๋Š” ๊ฒƒ์€ ์œ ๊ฐ์ž…๋‹ˆ๋‹ค.

API ํ˜ธํ™˜ ๋Œ€์ฒด๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š์•˜๋‹ค๋Š” ์‚ฌ์‹ค์„ ์ผ๋‹จ ์•‰์•„์„œ ์ž‘์—…ํ•˜๋ฉด API ํ˜ธํ™˜ ๋Œ€์ฒด๋ฅผ ์ฑ„ํƒํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•˜์ง€ ์•Š๋‹ค๋Š” ํ‘œ์‹œ๋กœ ๋ฐ›์•„๋“ค์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿง

๊ทธ๊ฒƒ์€ ํ™•์‹คํžˆ ๋‚ด ๊ฒฝํ—˜์ด์—ˆ์Šต๋‹ˆ๋‹ค.

์•„๋งˆ๋„ ์‚ฌ๋žŒ๋“ค์ด "๊ต์ฒด"๋ฅผ ์š”์ฒญํ•  ๋•Œ ์ง„์ •์œผ๋กœ ์›ํ•˜๋Š” ๊ฒƒ์€ API ํ˜ธํ™˜ ๋Œ€์•ˆ์ด ์•„๋‹ˆ๋ผ ๊ฑฐ์˜ ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ด๋ฏธ ๋‚˜์™€ ์žˆ๋Š” ๋‹ค๋ฅธ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ์œ ์ง€ ๊ด€๋ฆฌ์ž์˜ ๊ด€์ ์ด๋ฉฐ, ์ด๊ฒƒ์ด ์ด ํŒจํ‚ค์ง€๋ฅผ ๋ฌด์˜๋ฏธํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์‹ ์žˆ๊ฒŒ "์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ"์ด๋ผ๊ณ  ๋ถ€๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์‚ฌ์šฉ ์ค‘๋‹จ ์•Œ๋ฆผ์— bent ๋ฅผ ๊ด‘๊ณ ํ•˜๋Š” ๊ฒƒ์ด (์•„๋งˆ๋„ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ํ•จ๊ป˜) ์ด๋ฆ„์ด ๋ถˆ๋ถ„๋ช…ํ•จ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์•Œ๋ฆฌ๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ด๋ผ๊ณ  ๋งํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.


๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” Angluar 8 ์š”์ฒญ ๋ชจ๋“ˆ

npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
npm ERR! code E404
npm ERR! 404 Not Found: error-ex@^1.3.1

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\Ammar\AppData\Roaming\npm-cache\_logs\2020-02-12T04_18_22_538Z-debug.log

"deprecated"๊ฐ€ ์‹ค์ œ๋กœ ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š”์ง€ ์ •๋ง๋กœ ์ดํ•ดํ•˜๊ณ  ๊ณ„์‹ญ๋‹ˆ๊นŒ?

๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์˜ ์„ธ๊ณ„์—์„œ "์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”"์€ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์œผ๋กœ ๋Œ€์ฒด๋˜๋Š” ๊ณผ์ •์— ์žˆ๋Š” ๊ธฐ๋Šฅ์ด๋‚˜ ์š”์†Œ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ์ด ์šฉ์–ด๋Š” "๋น„์ถ”์ฒœ"์ด๋ผ๋Š” ๋‹จ์–ด์—์„œ ์œ ๋ž˜ํ–ˆ์œผ๋ฉฐ, ์ด๋Š” ๋ฌด์–ธ๊ฐ€๋ฅผ ์Šน์ธํ•˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ ์ด๊ฒƒ์€ (์˜คํ”ˆ ์†Œ์Šค๊ฐ€ ์•„๋‹Œ) ๋ชจ๋“ˆ์„ ์œ ์ง€ ๊ด€๋ฆฌํ•  ๋•Œ ์–ด๋ฆฌ์„์€ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ›๊ฒŒ ๋œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

151๊ฐœ์˜ ์ด์Šˆ์™€ 55๊ฐœ์˜ ํ’€ ๋ฆฌํ€˜์ŠคํŠธ๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ? ๋ฒ„๋ ค?

๊ทธ๋ฆฌ๊ณ  ์‚ฌ์šฉ ์ค‘๋‹จ ๊ณต์ง€์— ๊ตฌ๋ถ€๋ฆฐ ๊ด‘๊ณ (์•„๋งˆ ๋” ํŽธ์•ˆํ•˜๊ฒŒ ๋Š๊ปด์ง„๋‹ค๋ฉด ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ํ•จ๊ป˜)๋Š” ๋ชจํ˜ธํ•œ ์ด๋ฆ„์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์•Œ๋ ค์ง€๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ด๋ผ๊ณ  ๋งํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋„ˆ๋ฌด ์ด๋ฅด๋‹ค - ๊ตฌ๋ถ€๋Ÿฌ์ง„ ๋ฌธ์ œ 2๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

์š”์ฒญ์ด ๋ฆผ๋ณด ๋ชจ๋“œ๋กœ ์ „ํ™˜๋˜์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์•„ ์–ด๋ฆฌ์„์€ ๊ฒฝ๊ณ ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์•„๋ฌด ๊ฒƒ๋„ ์ˆ˜ํ–‰๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ๋ชจ๋“  ๋ฌธ์ œ์™€ ํ’€์ด ๋ฌด์‹œ๋˜๊ณ  README ํŽ˜์ด์ง€๋ฅผ ์—…๋ฐ์ดํŠธํ•˜์—ฌ ์ด๋ฅผ ์ฐธ๊ณ ํ•˜๊ณ  ์ ์ ˆํ•  ๋•Œ ์ฐธ์กฐ๊ฐ€ ์—…๋ฐ์ดํŠธ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋Šฅ์ ์œผ๋กœ ๋™๋“ฑํ•œ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€์— ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

151๊ฐœ์˜ ์ด์Šˆ์™€ 55๊ฐœ์˜ ํ’€ ๋ฆฌํ€˜์ŠคํŠธ๋Š” ์–ด๋–ป์Šต๋‹ˆ๊นŒ? ๋ฒ„๋ ค?

ํ•œ๋™์•ˆ ์•„๋ฌด๋„ ์ด๊ฒƒ์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๊ฒ€ํ† ํ•˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์ด๋ฏธ "๋คํ”„"๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๊ท€ํ•˜์˜ ์˜๊ฒฌ์€ ์‚ฌ๋žŒ๋“ค์ด ์ž๊ฒฉ์„ ๊ฐ–์ถ˜ ์ด ํ”„๋กœ์ ํŠธ์— ์ผ์ข…์˜ ํ—Œ์‹ ์ ์ธ ๋…ธ๋™์ด ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋“ค๋ฆฝ๋‹ˆ๋‹ค. request ๋Š” ํ•œ ๋ฒˆ๋„ ๊ทธ๋Ÿฐ ์ ์ด ์—†์Šต๋‹ˆ๋‹ค.

ํ•œ๋™์•ˆ ์•„๋ฌด๋„ ์ด๊ฒƒ์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ๊ฒ€ํ† ํ•˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์ด๋ฏธ "๋คํ”„"๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋‹น์‹ ์ด ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์€ ๋‹น์‹ ์ด ํ•œ๋™์•ˆ ์ด๊ฒƒ๋“ค์„ ๊ฒ€ํ† ํ•˜์ง€ ์•Š์•˜๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ณตํ‰ํ•˜๊ฒŒ, ํ˜‘๋ ฅ์ž๊ฐ€ ์•„๋‹Œ ์šฐ๋ฆฌ๋Š” ์ด๊ฒƒ์„ ํ†ต์ œํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ท€ํ•˜์˜ ์˜๊ฒฌ์€ ์‚ฌ๋žŒ๋“ค์ด ์ž๊ฒฉ์„ ๊ฐ–์ถ˜ ์ด ํ”„๋กœ์ ํŠธ์— ์ผ์ข…์˜ ํ—Œ์‹ ์ ์ธ ๋…ธ๋™์ด ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋“ค๋ฆฝ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ ๋œป์€ ์•„๋‹ˆ์—ˆ์ง€๋งŒ ์–ด๋–ค ์˜๋ฏธ์—์„œ ์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด๋Š” ๊ฐœ๋ฐœ์ž์˜ ๊ถŒ๋ฆฌ๋ฅผ ๋ณดํ˜ธํ•จ๊ณผ ๋™์‹œ์— ์‚ฌ์šฉ์ž์—๊ฒŒ ํŠน์ • ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•˜๋Š” ๊ฒƒ์ด ์‚ฌ์‹ค์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ถŒํ•œ์€ ์œ ์ง€๋ฅผ ์œ„ํ•œ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์‚ฌ์šฉ์„ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์œ ์ง€ ๊ด€๋ฆฌ ๋˜๋Š” ํ–ฅํ›„ ๊ฐœ๋ฐœ์— ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ํฌํ•จ๋˜๋ฉด ๋งŽ์€ ์ฃผ์˜์™€ ์ƒ๊ฐ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ํš๊ธฐ์ ์ธ ๋ณ€๊ฒฝ์ด๋ฉฐ ์ œ ์ƒ๊ฐ์—๋Š” ๋ถˆํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์„ ๊ทธ๋Œ€๋กœ ๋‘์‹ญ์‹œ์˜ค. ํŠนํžˆ ๋Œ€์•ˆ์ด ์ด์ ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๊ทธ๋ ‡๊ฒŒ ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์€ ์–ด๋ฆฌ์„์€ ์ผ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚ด๊ฐ€ ๋ณผ ์ˆ˜ ์žˆ๋Š” ํ•œ ํ˜„์žฌ๋กœ์„œ๋Š” ์‹ค์งˆ์ ์ธ ๋Œ€์•ˆ์ด ์—†์Šต๋‹ˆ๋‹ค.

์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ํŠน์ • ๊ถŒํ•œ์„ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค.

OSS ๋ผ์ด์„ ์Šค๋Š” ์žฌ๋ฐฐํฌ ๋ฐ ์ˆ˜์ • ๊ถŒํ•œ์„ ์ œ๊ณตํ•˜๋ฉฐ ํŠน์ • ์šฉ๋„์— ๋Œ€ํ•œ ์†Œํ”„ํŠธ์›จ์–ด์˜ ์ ํ•ฉ์„ฑ์— ๋Œ€ํ•ด ์–ด๋– ํ•œ ๋ณด์ฆ๋„ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž ์žฌ์ ์ธ ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํฌํ•จํ•˜์—ฌ ํ–ฅํ›„ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•ด ์–ด๋– ํ•œ ๋ณด์žฅ๋„ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ Apache 2 ๋ผ์ด์„ ์Šค์˜ ๊ด€๋ จ ํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค. ๊ฑฐ์˜ ๋ชจ๋“  ์˜คํ”ˆ ์†Œ์Šค ๋ผ์ด์„ ์Šค์— ์ด ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

โ€œLicensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.โ€

์ด๊ฒƒ์€ ํš๊ธฐ์ ์ธ ๋ณ€๊ฒฝ์ด๋ฉฐ ์ œ ์ƒ๊ฐ์—๋Š” ๋ถˆํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“ˆ์„ ๊ทธ๋Œ€๋กœ ๋‘์‹ญ์‹œ์˜ค. ํŠนํžˆ ๋Œ€์•ˆ์ด ์ด์ ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๊ทธ๋ ‡๊ฒŒ ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์€ ์–ด๋ฆฌ์„์€ ์ผ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋‚ด๊ฐ€ ๋ณผ ์ˆ˜ ์žˆ๋Š” ํ•œ ํ˜„์žฌ๋กœ์„œ๋Š” ์‹ค์งˆ์ ์ธ ๋Œ€์•ˆ์ด ์—†์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฝ”๋“œ์—๋Š” ์ˆ˜์ •๋˜์ง€ ์•Š์„ ์•Œ๋ ค์ง„ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฝ”๋“œ๋Š” ๋” ์ด์ƒ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์œผ๋ฉฐ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ์ฝ”๋“œ์— ์˜์กดํ•˜๊ณ  ์žˆ๋‹ค๋Š” ์•Œ๋ฆผ์ž…๋‹ˆ๋‹ค. ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ณ  ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ์ฝ”๋“œ์— ์˜์กดํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค๋ฉด ๋‹จ์ˆœํžˆ ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ๊ท€ํ•˜์˜ ๋ฌธ์ œ๋Š” ์†Œํ”„ํŠธ์›จ์–ด ์ƒํƒœ๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฒฝ๊ณ ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์†Œํ”„ํŠธ์›จ์–ด ์ƒํƒœ๊ฐ€ ๊ดœ์ฐฎ๋‹ค๋ฉด ๋‹จ์ˆœํžˆ ๊ฒฝ๊ณ ๋ฅผ ํ‘œ์‹œํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

์šฐ๋ฆฌ๋Š” ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ชจ๋“ˆ์— ์˜์กดํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ๊ฑฑ์ •ํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ์‰ฝ๊ฒŒ ์–ต์ œํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ๊ณ ์— ๋Œ€ํ•œ ํŠน์ • ์‚ฌ์šฉ์ž์˜ ์šฐ๋ ค๋ฅผ ๋งŒ์กฑ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ ์ค‘์ง€ ์ƒํƒœ ๋ฐ ๊ด€๋ จ ๊ฒฝ๊ณ ๋ฅผ ํ˜„์‹ค๊ณผ ๋งž์ง€ ์•Š๊ฒŒ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋„์›€์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค!!!.. node-gyp 3.6.2๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
PS C:\Users\User> npm install --global [email protected]
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ C:\Users\User\AppData\Roamingnpm\node-gyp.cmd
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ EEXIST
npm ์˜ค๋ฅ˜! C:\Users\User\AppData\Roamingnpm\node-gyp.cmd: ์‚ญ์ œ ๊ฑฐ๋ถ€: C:\Users\User\AppData\Roamingnpm\node_modules\node-gyp ์™ธ๋ถ€์— ์žˆ์œผ๋ฉฐ ๋งํฌ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! ํŒŒ์ผ ์กด์žฌ: C:\Users\User\AppData\Roamingnpm\node-gyp.cmd
npm ์˜ค๋ฅ˜! ๋ฉ€๋ฆฌ ์˜ฎ๊ธฐ๊ณ  ๋‹ค์‹œ ์‹œ๋„ํ•˜์‹ญ์‹œ์˜ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\User\AppData\Roamingnpm-cache_logs\2020-02-13T05_12_13_683Z-debug.log

@mikeal ์˜ค, ํฅ๋ฏธ๋กœ์šด ์‚ฌ๋ก€์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ ์ค‘๋‹จ ์•Œ๋ฆผ์— ๋ฌธ์ œ ๋ฒˆํ˜ธ๊ฐ€ ์žˆ์œผ๋ฉด @Meharab์ด ์‹œ์—ฐํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๊ด€๋ จ ์—†๋Š” ์˜๊ฒฌ์ด ๋งŽ์ด

์•„๋งˆ๋„ ์—ฌ๊ธฐ์— ๋” ์ด์ƒ์˜ ๋Œ“๊ธ€์„ ๋ฐฉ์ง€ํ•  ์‹œ๊ฐ„์ด ๋˜์—ˆ์Šต๋‹ˆ๊นŒ?

์—…๋ฐ์ดํŠธ : 5์ผ ํ›„ ๋Œ“๊ธ€์ด ์ •๋ง ์Œ“์ž…๋‹ˆ๋‹ค.

@mikeal ๊ทธ๋™์•ˆ ๊ฐ์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค

๊ตฟ๋‚˜์ž‡ ๋ฆฌํ€˜์ŠคํŠธ. ๋‹ค๋ฅธ ์ชฝ์—์„œ ๋ณด์ž.

์š”์ฒญ์€ JavaScript์ด๊ธฐ ๋•Œ๋ฌธ์— ์˜์›ํžˆ ์ž‘๋™ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์š”์ฒญ์€ JavaScript์ด๊ธฐ ๋•Œ๋ฌธ์— ์˜์›ํžˆ ์ž‘๋™ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•„๋‹ˆ์š”.
์ด ์ฝ”๋“œ์—๋Š” ์ˆ˜์ •๋˜์ง€ ์•Š์„ ์•Œ๋ ค์ง„ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฝ”๋“œ๋Š” ๋” ์ด์ƒ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์œผ๋ฉฐ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (์ธ์šฉ)

๋”ฐ๋ผ์„œ ์š”์ฒญ์— ์ˆ˜์ •๋˜์ง€ ์•Š์€ ๋ฒ„๊ทธ๊ฐ€ ์˜์›ํžˆ ์žˆ์„ ๊ฒƒ์ด๋ฉฐ ์˜์›ํžˆ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค ...

๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ๋‹ค. ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›์ง€ ์•Š์œผ๋ ค๋ฉด ์ด์ œ ๊ณต์‹์ ์œผ๋กœ ๋ฌด์—‡์„ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

request ์ œ๊ฑฐ ์—ฌ๊ธฐ์—๋Š” ์ž์‹ ์˜ ์ข…์†์„ฑ์—์„œ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜, ์ตœ์‹  ๋ฒ„์ „์—์„œ ์ œ๊ฑฐํ•˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๊ฑฐ๋‚˜, ์•„์ง ์ƒˆ ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์€ ํŒจํ‚ค์ง€๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ์ž‘์—…์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”.

์ฝ”๋ฅด๋„๋ฐ”๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

npm install -g ์ฝ”๋ฅด๋„๋ฐ”

์ด ์˜ค๋ฅ˜๊ฐ€ ๊ณ„์† ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์œˆ๋„์šฐ [๋ฒ„์ „ 10.0.18362.592]
(c) 2019 Microsoft Corporation. ํŒ๊ถŒ ์†Œ์œ .

C:\Users>npm install -g ์ฝ”๋ฅด๋„๋ฐ”
npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
C:\Users\AppData\Roamingnpm\cordova -> C:\Users\AppData\Roamingnpm\node_modules\cordova\bin\cordova

Cordova๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?
์ด ๊ตฌ๋งค๋ฅผ ์šฐํšŒํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์˜ˆ. ํ™•์ธ. ์š”์ฒญ์„ ์ œ๊ฑฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ๋Ÿผ?

๊ทธ๋ž˜์„œ node.js์—์„œ .. idk.. axios๋กœ ์ „ํ™˜ํ•ด์•ผํ•ฉ๋‹ˆ๊นŒ?

์š”์ฒญ ์ž๋ฆฌ์— ๋ฌด์—‡์„ ๋„ฃ์–ด์•ผ ํ• ๊นŒ์š”?

์š”์ฒญ์ด ์žˆ์—ˆ๋˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ๋‹ค์‹œ ์ž‘์„ฑํ•œ๋‹ค๋Š” ์•„์ด๋””์–ด๋ฅผ ์ดํ•ดํ•ฉ๋‹ˆ๊นŒ?

์ •๊ทœ์‹์œผ๋กœ ์ฐพ๊ธฐ ๋ฐ ๋ฐ”๊พธ๊ธฐ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์š”์ฒญ์„ ๊ณต์‹์ ์œผ๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋Š” ํ•ญ๋ชฉ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ๋ฉด Google์—์„œ ๊ฐ€์žฅ ๋จผ์ € ํ‘œ์‹œ๋˜๋Š” ํ•ญ๋ชฉ์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์ง€๊ธˆ ์ž์œ ๋กญ๊ฒŒ ์„ค์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ๋‹ค

์š”์ฒญ์— ๋Œ€ํ•œ ๊ณต์‹ ๊ต์ฒด๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

์•„๋‹ˆ์š”, ๊ฐ™์€ ๊ฐœ๋ฐœ์ž๊ฐ€ bent ์ž‘์—…์„ ํ•˜๊ณ  ์žˆ์ง€๋งŒ ์›ํ•˜๋Š” ๋Œ€๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ฐ›์€ postman-request ํฌํฌ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ request ์ง€์› ์ค‘๋‹จ ์ดํ›„ ํ™œ๋™์ด ์—†์Šต๋‹ˆ๋‹ค.~

๋ฌธ์ œ ํŽ˜์ด์ง€๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๊ธฐ์—์„œ ์งˆ๋ฌธํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

@coditva @codenirvana @shamasis @vikiCoder @czardoz

์–ธ๊ธ‰์— ๋Œ€ํ•ด ์‚ฌ๊ณผํ•˜์ง€๋งŒ request ๊ฐ€ ๊ณต์‹์ ์œผ๋กœ ์ข…๋ฃŒ๋œ ์ง€๊ธˆ postman-request ๋Œ€ํ•œ ์•ž์œผ๋กœ์˜ ๊ณ„ํš์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? postman-request ๋Š” ๊ณ„์† ์œ ์ง€ ๊ด€๋ฆฌ๋ฉ๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ?

๋„์›€์ด ํ•„์š”ํ•˜๋‹ค!!! Angular๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค
npm install -g @angular/cli
npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ EEXIST
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ C:\Users\FARHAN\AppData\Roamingnpm\node_modules\@angular\cli\bin\ng
npm ์˜ค๋ฅ˜! ๋Œ€์ƒ C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd
npm ์˜ค๋ฅ˜! EEXIST: ํŒŒ์ผ์ด ์ด๋ฏธ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. cmd shim 'C:\Users\FARHAN\AppData\Roamingnpm\node_modules\@angular\cli\bin\ng' -> 'C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd'
npm ์˜ค๋ฅ˜! ํŒŒ์ผ ์กด์žฌ: C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd
npm ์˜ค๋ฅ˜! ๊ธฐ์กด ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์‹œ๋„ํ•˜๊ฑฐ๋‚˜ npm์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! --force๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌด๋ชจํ•˜๊ฒŒ ํŒŒ์ผ์„ ๋ฎ์–ด์”๋‹ˆ๋‹ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\FARHAN\AppData\Roamingnpm-cache_logs\2020-02-15T09_52_19_067Z-debug.log

request ์˜ ๋Œ€์•ˆ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? Angular๋Š” ์—ฌ์ „ํžˆ ์ด์— ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋“ค์ด ๊ณง ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋‚˜๋Š” Mikeal Rogers๊ฐ€ ๋ฐ˜๋™์„ ์ผ์œผํ‚ค๊ณ  ์–ด์ฉŒ๋ฉด ๋‚˜๋ฅผ ๋น„๋‚œํ•  ์ˆ˜๋„ ์žˆ๋Š” ๋‹จ๊ธฐ์ ์ธ ํ•ด๊ฒฐ์ฑ…์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ˜„์žฌ ์‚ฌ์šฉ ์ค‘๋‹จ์€ ์˜ˆ์ •์— ์—†๋˜ 2๋‹จ๊ณ„(1) ํ•„์š”์„ฑ์— ๋Œ€ํ•œ ์ผ๋ฐ˜ ๋…ผ์˜, 2) BANG, ์•ฝ 30๋ถ„ ํ†ต์ง€ ํ›„ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ์ง€์˜ฅ์ด ํ’€๋ ธ์Šต๋‹ˆ๋‹ค.

์ €๋Š” @mikeal ์—๊ฒŒ ์˜ค๋Š˜ ์‚ฌ์šฉ ์ค‘๋‹จ์„ ๋กค๋ฐฑํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•  ๊ฒƒ์ธ์ง€ ๋ฌป๊ณ  2020๋…„ 8์›” 15์ผ์— ๊ตฌํ˜„๋˜์–ด ์™„์ „ํžˆ ๋ฐœํšจ๋  6๊ฐœ์›” "๊ฐ๊ฐ€ ์ƒ๊ฐ ์•Œ๋ฆผ"์„ โ€‹โ€‹๋ฐœํ‘œํ•ฉ๋‹ˆ๋‹ค.

3๋‹จ๊ณ„-
1) ํ† ๋ก : 2019๋…„ 3์›” 20์ผ ~ 2020๋…„ 2์›” 15์ผ
2) 6๊ฐœ์›” ์ง€์› ์ค‘๋‹จ ์•Œ๋ฆผ: 2020๋…„ 2์›” 15์ผ
3) ์ง€์› ์ค‘๋‹จ ๊ตฌํ˜„: 2020๋…„ 8์›” 15์ผ

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ”„๋ ˆ์ž„์›Œํฌ์™€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ฆ‰์‹œ ์ค‘๋‹จ๋˜์ง€ ์•Š์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋„ˆ๋ฌด ๊ฐ€ํ˜นํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ด ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ์ด์ œ ์ด ํ† ๋ก  ์˜์—ญ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋Œ€์•ˆ์„ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 6๊ฐœ์›” ๊ธฐํ•œ๊นŒ์ง€. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ทธ๋Ÿฐ ์ผ์ด ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์šฐ๋ฆฌ๋Š” ๋ชจ๋‘ ๊ฒฝ๋ก€๋ฅผ ํ•˜๊ณ  ์น˜์–ด๋ฆฌ์˜ค๋ฅผ ์™ธ์น  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์•„๋ฌด ๊ฒƒ๋„ ๊นจ์ง„ ๊ฒƒ์ด ์—†์Šต๋‹ˆ๋‹ค.

๋‹จ, ํ์ง€์˜ ํ•„์š”์„ฑ์ด๋‚˜ ์ฐฝ์ž‘์ž์˜ ๊ถŒ๋ฆฌ ๋“ฑ์„ ๋…ผํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹˜์„ ์–‘ํ•ด ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค... ์œ„์—์„œ ๋ง์”€๋“œ๋ฆฐ ๋Œ€๋กœ 3๋‹จ๊ณ„ ์‚ฌ์ „๊ณต์ง€ ์ผ์ •์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋ฉฐ ์š”์ฒญ ๋ชจ๋“ˆ์— ๋”ฐ๋ผ ์˜ค๋Š˜๋‚  ์ „ ์„ธ๊ณ„์— ์‚ด์•„์žˆ๋Š” ์•ฑ์ž…๋‹ˆ๋‹ค.

Mikeal, ์ œ๋ฐœ, ๋‚ด ์ œ์•ˆ์„ ๊ณ ๋ คํ•˜๊ณ  ์˜ค๋Š˜ ์‚ฌ์šฉ ์ค‘๋‹จ ์ƒํƒœ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  6๊ฐœ์›” ์•Œ๋ฆผ์„ ๋ฐœํ‘œํ•˜์‹ญ์‹œ์˜ค. 6๊ฐœ์›” ๋ฏธ๋งŒ์€ ์šฐ๋ฆฌ ์ค‘ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ถฉ๋ถ„ํ•œ ์‹œ๊ฐ„์ด ์•„๋‹ˆ๋ฉฐ 6๊ฐœ์›”์€ ๊ณต์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ ๋ชจ๋‘๋Š” ๊ทธ๋ ‡๊ฒŒ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋“ค์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
-๋ฆญ ํ•‘ํฌ

์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ์ถ”๊ฐ€ํ•ด๋„ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์œผ๋ฉฐ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ–ฅํ›„ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Œ์„ ๊ฒฝ๊ณ ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ ํŒจํ‚ค์ง€๋ฅผ ๊ต์ฒดํ•ด์•ผ ํ•œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ธฐ ์ „์— ์ปค๋ฎค๋‹ˆํ‹ฐ ํ† ๋ก ์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๊ฒƒ๋ณด๋‹ค ์‚ฌ์šฉ ์ค‘๋‹จ ๋ฉ”์‹œ์ง€๋ฅผ ๋” ๋นจ๋ฆฌ ๋ณด๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์ด ํŒจํ‚ค์ง€๋Š” ์˜คํ”ˆ ์†Œ์Šค๋ฅผ ํ†ตํ•ด ๋ฌด๋ฃŒ๋กœ ๊ฐœ๋ฐœ๋˜์—ˆ์œผ๋ฉฐ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋Š” ๊ท€ํ•˜์—๊ฒŒ ๋นš์ง„ ๊ฒƒ์ด ์—†์Œ์„ ์นœ์ ˆํ•˜๊ฒŒ ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํŒจํ‚ค์ง€๋ฅผ ๋ถ„๊ธฐํ•˜๊ณ  ๊ณ„์† ์œ ์ง€ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@riclf

๋„์›€์ด ํ•„์š”ํ•˜๋‹ค!!! Angular๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค
npm install -g @angular/cli
npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. #3142 ์ฐธ์กฐ
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ EEXIST
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ C:\Users\FARHAN\AppData\Roamingnpm\node_modules@angular\cli\bin\ng
npm ์˜ค๋ฅ˜! ๋Œ€์ƒ C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd
npm ์˜ค๋ฅ˜! EEXIST: ํŒŒ์ผ์ด ์ด๋ฏธ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. cmd shim 'C:\Users\FARHAN\AppData\Roamingnpm\node_modules@angular\cli\bin\ng' -> 'C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd'
npm ์˜ค๋ฅ˜! ํŒŒ์ผ ์กด์žฌ: C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd
npm ์˜ค๋ฅ˜! ๊ธฐ์กด ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์‹œ๋„ํ•˜๊ฑฐ๋‚˜ npm์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! --force๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌด๋ชจํ•˜๊ฒŒ ํŒŒ์ผ์„ ๋ฎ์–ด์”๋‹ˆ๋‹ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\FARHAN\AppData\Roamingnpm-cache_logs\2020-02-15T09_52_19_067Z-debug.log

์ด๊ฒƒ์€ request ๊ฐ€ node-fetch ๋กœ ๋ฐ”๋€Œ๋Š” ์ตœ์‹  Angular ๋ฆด๋ฆฌ์Šค์—์„œ ํ•ด๊ฒฐ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@AURZeeshan
๊ท€ํ•˜์˜ ์˜ค๋ฅ˜๋Š” ์ด๊ฒƒ๊ณผ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€์—์„œ ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋˜๋Š” ๊ฒƒ๋ฟ์ž…๋‹ˆ๋‹ค. ์˜ค๋ฅ˜๋Š” ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

@riclf

๋„์›€์ด ํ•„์š”ํ•˜๋‹ค!!! Angular๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค
npm install -g @angular/cli
npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. #3142 ์ฐธ์กฐ
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ EEXIST
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ C:\Users\FARHAN\AppData\Roamingnpm\node_modules@angular\cli\bin\ng
npm ์˜ค๋ฅ˜! ๋Œ€์ƒ C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd
npm ์˜ค๋ฅ˜! EEXIST: ํŒŒ์ผ์ด ์ด๋ฏธ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. cmd shim 'C:\Users\FARHAN\AppData\Roamingnpm\node_modules@angular\cli\bin\ng' -> 'C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd'
npm ์˜ค๋ฅ˜! ํŒŒ์ผ ์กด์žฌ: C:\Users\FARHAN\AppData\Roamingnpm\ng.cmd
npm ์˜ค๋ฅ˜! ๊ธฐ์กด ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์‹œ๋„ํ•˜๊ฑฐ๋‚˜ npm์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! --force๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌด๋ชจํ•˜๊ฒŒ ํŒŒ์ผ์„ ๋ฎ์–ด์”๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\FARHAN\AppData\Roamingnpm-cache_logs\2020-02-15T09_52_19_067Z-debug.log

์ด๊ฒƒ์€ request ๊ฐ€ node-fetch ๋กœ ๋ฐ”๋€Œ๋Š” ์ตœ์‹  Angular ๋ฆด๋ฆฌ์Šค์—์„œ ํ•ด๊ฒฐ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ตœ์‹  CLI ๋ฒ„์ „์„ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ์ „ํžˆ ๊ฐ™์€ ๊ฒฝ๊ณ ๋ฅผ ๋˜์ง‘๋‹ˆ๋‹ค.

npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142

@vighnesh153 package.json ์— @angular/cli ์˜ ์–ด๋–ค ๋ฒ„์ „์ด ์ง€์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๊นŒ? ์ผ๋ถ€ ์ข…์†์„ฑ์€ ์š”์ฒญ์ด ํ•„์š”ํ•˜์ง€๋งŒ ๊ธฐ๋ณธ ํŒจํ‚ค์ง€ ์ž์ฒด๋Š” ํ•„์š”ํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. http://npm.anvaka.com/#/view/2d/ %2540angular%252Fcli ์ฐธ์กฐ

์•„๋งˆ๋„ ๋‹น์‹ ์ด ์˜ณ์Šต๋‹ˆ๋‹ค. ์–ด๋–ค ํŒจํ‚ค์ง€๊ฐ€ request-package๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ deps์˜ ์Šค๋ƒ…์ž…๋‹ˆ๋‹ค.

"dependencies": {
    "@angular/animations": "~9.0.1",
    "@angular/common": "~9.0.1",
    "@angular/compiler": "~9.0.1",
    "@angular/core": "~9.0.1",
    "@angular/forms": "~9.0.1",
    "@angular/platform-browser": "~9.0.1",
    "@angular/platform-browser-dynamic": "~9.0.1",
    "@angular/router": "~9.0.1",
    "rxjs": "~6.5.4",
    "tslib": "^1.10.0",
    "zone.js": "~0.10.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.900.2",
    "@angular/cli": "~9.0.2",
    "@angular/compiler-cli": "~9.0.1",
    "@angular/language-service": "~9.0.1",
    "@types/node": "^12.11.1",
    "@types/jasmine": "~3.5.0",
    "@types/jasminewd2": "~2.0.3",
    "codelyzer": "^5.1.2",
    "jasmine-core": "~3.5.0",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~4.3.0",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage-istanbul-reporter": "~2.1.0",
    "karma-jasmine": "~2.0.1",
    "karma-jasmine-html-reporter": "^1.4.2",
    "protractor": "~5.4.3",
    "ts-node": "~8.3.0",
    "tslint": "~5.18.0",
    "typescript": "~3.7.5"
  }

npm ์„ค์น˜
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ

\vue-devtools-dev์—์„œ ์™„์ „ํ•œ "npm ์„ค์น˜"๋ฅผ ์›ํ•  ๋•Œ ์ด์— ๋Œ€ํ•ด ๊ฒฝ๊ณ ํ–ˆ์Šต๋‹ˆ๋‹ค.
์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ธฐ๋กœ ํ•œ ๋‹น์‹ ์˜ ๊ฒฐ์ •์„ ์ „์ ์œผ๋กœ ์กด์ค‘ํ•˜๋ฉฐ ๋ฏธ๋ž˜์— ์ตœ์„ ์„ ๋‹คํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

"๊ทธ๋ž˜์„œ ์ง€๊ธˆ๋ถ€ํ„ฐ ๋ฌด์—‡์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ??"๋ฅผ ์ฐพ๋Š” ์Šค๋ ˆ๋“œ์— ์˜ค๋Š” ์‚ฌ๋žŒ๋“ค์€ got ๋˜๋Š” axios ๊ฐ€ ๋‹น์‹ ์ด ์ฐพ๊ณ  ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ถˆ์Œํ•œ. node-fetch๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค.

... node-fetch ๊ฐ€ request ๋Œ€ํ•œ ์ข‹์€ ๋Œ€์ฒดํ’ˆ์ธ์ง€ ๋˜๋Š” ์ ๊ทน์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌ๋˜๋Š”์ง€ ์Šค์Šค๋กœ ์งˆ๋ฌธํ•˜๋Š” ๊ฒƒ์„ ์ œ์™ธํ•˜๊ณ . ์ฐธ์œผ๋กœ ํ•œ์‹ฌํ•˜๋‹ค.

https://github.com/node-fetch/node-fetch/issues/668#issuecomment -586903934

Btw, node-fetch ์„ ํƒํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์€ ์ •๋ง ์กฐ์‹ฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ํ›Œ๋ฅญํ•˜์ง€๋งŒ ์ž์ฒด์ ์œผ๋กœ ์‹ฌ๊ฐํ•œ ์œ ์ง€ ๊ด€๋ฆฌ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ถˆ์Œํ•œ. node-fetch๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•  ์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค.

... node-fetch ๊ฐ€ request ๋Œ€ํ•œ ์ข‹์€ ๋Œ€์ฒดํ’ˆ์ธ์ง€ ๋˜๋Š” ์ ๊ทน์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌ๋˜๋Š”์ง€ ์Šค์Šค๋กœ ์งˆ๋ฌธํ•˜๋Š” ๊ฒƒ์„ ์ œ์™ธํ•˜๊ณ . ์ฐธ์œผ๋กœ ํ•œ์‹ฌํ•˜๋‹ค.

node-fetch/node-fetch#668 (์ฝ”๋ฉ˜ํŠธ)

์ตœ์†Œํ•œ node-fetch๋Š” ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์— ๋Œ€ํ•œ ์ง€์› ์ค‘๋‹จ์œผ๋กœ ์ธํ•ด ์ž๋™ ๋นŒ๋“œ ์‹œ์Šคํ…œ์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด ์›€์ง์ž„์„ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๊ณ  ๋ฐ›์•„๋“ค์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ œ ์ƒ๊ฐ์—๋Š” lib๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฐ„๋‹จํ•œ ๋ฉ”๋ชจ๋งŒ์œผ๋กœ๋„ ๊ฐ•๋ ฅํ•œ ์ง€์› ์ค‘๋‹จ ๋Œ€์‹  ์ถฉ๋ถ„ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ €๋Š” ์ด ์ƒํ™ฉ์„ ํ•œ์‹ฌํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ œ ์ƒ๊ฐ์—๋Š” lib๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฐ„๋‹จํ•œ ๋ฉ”๋ชจ๋กœ ์ถฉ๋ถ„ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๋ฐ”๋กœ ์‚ฌ์šฉ ์ค‘๋‹จ ์•Œ๋ฆผ์ž…๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ๋ฉ”๋ชจ์ž…๋‹ˆ๋‹ค.

@asgetz ๋ชจ๋“  npm์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•  ๋•Œ ๊ฒฝ๊ณ ๋ฅผ ์ธ์‡„ํ•˜๊ณ  ๋‹ค๋ฅธ ๋ชจ๋“  ๊ฒƒ์€ ์ด์ „๊ณผ ๋™์ผํ•˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

github์—์„œ ์ž‘์—…ํ•˜๋Š” less.js ํŒŒ์ผ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ PHP ๋‚ด์—์„œ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋ช…๋ น์— ๋œ ๋„ฃ์œผ๋ ค๊ณ  ํ•˜๋ฉด ์ด ๊ฒฝ๊ณ ๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ์ง€์— ๋Œ€ํ•œ ์•„์ด๋””์–ด๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

Screen Shot 2020-02-14 at 1 37 08 PM

@ljwestwhos ์š”์ฒญ์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋˜๋ฉฐ, ๊ท€ํ•˜๊ฐ€ ์–ธ๊ธ‰ํ•˜๋Š” ๋ฌธ์ œ์˜ ํ…์ŠคํŠธ๋Š” ์ด๊ฒƒ์ด ์˜๋ฏธํ•˜๋Š” ๋ฐ”๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์š”์ฒญ์ด ์—ฌ์ „ํžˆ ์ด์ „๊ณผ ๊ฐ™์ด ์ž‘๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— less.js์— ๋Œ€ํ•œ ๋ฌธ์ œ์™€ ๊ด€๋ จ์ด ์—†์„ ๊ฐ€๋Šฅ์„ฑ์ด ํฝ๋‹ˆ๋‹ค.

request ๋Œ€์‹  node.js์˜ ์ŠคํŠธ๋ฆผ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? node-fetch , axios ๋‘˜ ๋‹ค Promise ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ์•˜์Šต๋‹ˆ๋‹ค.

๋‚ฎ์€ ์ˆ˜์ค€์˜ ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋” ํŽธ๋ฆฌํ•œ ์ŠคํŠธ๋ฆผ ์ธํ„ฐํŽ˜์ด์Šค์˜ ๋Œ€์ฒดํ’ˆ์„ ์•Œ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

@maple3142 got ์—๋Š” ์ŠคํŠธ๋ฆผ ์ธํ„ฐํŽ˜์ด์Šค(์•ฝ์† ํฌํ•จ)์™€ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ๊ฐ€์ด๋“œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

@asgetz

npm์€ ์ง€๊ธˆ ์ง์ ‘ ์„ค์น˜ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์•Œ๋ ค์ค๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์€ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ๊ทธ๊ฒƒ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. request ์„ค์น˜ํ•˜๋ฉด ์‚ฌ์šฉ ์ค‘๋‹จ ์•Œ๋ฆผ์ด ํ‘œ์‹œ๋˜๊ณ  ๋ชจ๋“  ๊ฒƒ์ด ์ด์ „๊ณผ ๊ฐ™์ด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

๊ณ„ํš๋œ ์šฉ๋„๊ฐ€ ๋„ˆ๋ฌด ์ž‘์Šต๋‹ˆ๋‹ค

์ด ๊ฒฝ์šฐ ํ›จ์”ฌ ๋” ๊ฐ€๋ณ๊ณ  ์ž˜ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ๊ตฌ๋ถ€๋Ÿฌ์ง„ ๋ถ€๋ถ„ ์„ ์‚ดํŽด๋ณด์‹ญ์‹œ์˜ค.

@mikeal https://github.com/request/request/pull/3245๋ฅผ ์‚ดํŽด ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. proxyHeaderExclusiveList๋Š” ์ด ํŒจํ‚ค์ง€์˜ ์ตœ๊ณ ์˜ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜์ด๋ฉฐ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์ด๊ฒƒ์„ ๊ณ ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

@kauegimenes ์ด ํŒจํ‚ค์ง€๋Š” ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค ... ๋‹ค์‹œ๋Š” ์ˆ˜์ •๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค

@kevinvanrijn ๋” ์ด์ƒ postman-request ์œ ์ง€ ๊ด€๋ฆฌ์— ์ ๊ทน์ ์œผ๋กœ ์ฐธ์—ฌํ•˜์ง€ ์•Š์ง€๋งŒ ํ”„๋กœ์ ํŠธ๋Š” ํ™•์‹คํžˆ ์‚ด์•„์žˆ๊ณ  ๋งˆ์ง€๋ง‰ ๋ฆด๋ฆฌ์Šค๋Š” ํ•œ ๋‹ฌ ์ „์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ํ™œ์„ฑ ์œ ์ง€ ๊ด€๋ฆฌ์ž๊ฐ€ ์žฅ๊ธฐ ๊ณ„ํš์— ์ฐจ์ž„ํ•˜๋„๋ก ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@czardoz ์ข‹์€ ์ •๋ณด request ์— ๋”ฐ๋ผ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์„ ํ• ์• ํ•  ์ˆ˜ ์—†๋Š” ๋งŽ์€ ์†Œ๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ(๋ชจ๋‘ ๋น„๊ณต๊ฐœ)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. postman-request ์„ ๊ต์ฒดํ’ˆ์œผ๋กœ ๋–จ์–ด๋œจ๋ฆฌ๋ฉด ์ž ์‹œ๋งŒ ๋” ๊ธฐ๋Šฅ์„ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

cloudscraper ๋˜ํ•œ ๋Š๋ฆฐ ์œ ์ง€ ๊ด€๋ฆฌ๋กœ ์ธํ•ด ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์œผ๋ฉฐ ์•„์ง request ์—์„œ ๋ฒ—์–ด๋‚˜์ง€ ๋ชปํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. postman-request ์˜ต์…˜์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์€ ์ตœ์†Œํ•œ ๊ทธ ์ž์ฒด๋กœ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์„ ์œ„ํ—˜์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

@Edo78 ์™œ ๊ทธ๋ž˜? ์–ธ์  ๊ฐ€ ๋‚ด PR์ด ํ•ฉ์ณ์งˆ ๊ฑฐ๋ผ ๋ฏฟ์–ด์š”๐Ÿ˜†

์—ฌ์ „ํžˆ ํ™œ์„ฑ ์ƒํƒœ์ธ ์ปค๋ฏธํ„ฐ๋Š” ์ ์‹œ์— ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ณ‘ํ•ฉํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€๋งŒ ์•ฝ์†์€ ์—†์Šต๋‹ˆ๋‹ค.

Btw, node-fetch๋ฅผ ์„ ํƒํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์€ ์ •๋ง ์กฐ์‹ฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ํ›Œ๋ฅญํ•˜์ง€๋งŒ ์ž์ฒด์ ์œผ๋กœ ์‹ฌ๊ฐํ•œ ์œ ์ง€ ๊ด€๋ฆฌ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

@csvan ์กฐ๊ธˆ ์„ค๋ช…ํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๋งŒ ๋ณด์ž…๋‹ˆ๋‹ค.

npm์— ๋Œ€ํ•ด ์•„๋Š” ๊ฒƒ์ด ๊ฑฐ์˜ ์—†์Šต๋‹ˆ๋‹ค. API๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ ์ดํ•ดํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ๊ณ ๊ฐ€ ๋ช‡ ๊ฐœ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ๋‚˜๋ฅผ ์—ฌ๊ธฐ๋กœ ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‚˜์—๊ฒŒ ์™„์ „ํžˆ ์“ธ๋ชจ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฐ๊ฐ€ ์—ฌ๊ธฐ๋กœ ์•ˆ๋‚ด๋œ ์šฐ๋ฆฌ์—๊ฒŒ ์œ ์šฉํ•œ ๊ฒƒ์„ ์—ฌ๊ธฐ์— ๊ฒŒ์‹œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด npm์˜ ๋ฉ”์‹œ์ง€๊ฐ€ ๋” ์œ ์šฉํ•˜๋„๋ก ์ˆ˜์ •๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๋‚ด๊ฐ€ ๋ฐ›์€ ๋ฉ”์‹œ์ง€์ž…๋‹ˆ๋‹ค.

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm WARN saveError ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. 'C:\Users\Sam\package.json'์„ ์—ฝ๋‹ˆ๋‹ค.
npm ์•Œ๋ฆผ์€ package-lock.json์œผ๋กœ ์ž ๊ธˆ ํŒŒ์ผ์„ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ํŒŒ์ผ์„ ์ปค๋ฐ‹ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
npm WARN enoent ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. 'C:\Users\Sam\package.json'์„ ์—ฝ๋‹ˆ๋‹ค.
npm WARN Sam ์„ค๋ช… ์—†์Œ
npm WARN Sam ์ €์žฅ์†Œ ํ•„๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
npm WARN Sam README ๋ฐ์ดํ„ฐ ์—†์Œ
npm WARN Sam ๋ผ์ด์„ผ์Šค ํ•„๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ package.json ํŒŒ์ผ์€ ์—†์ง€๋งŒ package-lock.json ํŒŒ์ผ์€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฑฐ๊ธฐ์—์„œ ๋ฌด์—‡์„ ์ฐพ์•„์•ผ ํ•˜๋Š”์ง€ ์ „ํ˜€ ๋ชจ๋ฅธ๋‹ค.

@SimpleSamples ํŒจํ‚ค์ง€๋Š” ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ ํ…์ŠคํŠธ์—์„œ ๋ช…ํ™•ํ•˜๊ฒŒ ์„ค๋ช…ํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๊ฐ€๋Šฅํ•œ ๋ฒ„๊ทธ ์ˆ˜์ •์„ ์ œ์™ธํ•˜๊ณ  ์ ๊ทน์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. NPM์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Œ์„ ๊ฒฝ๊ณ ํ•˜๋ฏ€๋กœ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ์ „ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์› ์ค‘๋‹จ์ด ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š”์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ Google์—์„œ ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋ช‡ ๊ฐ€์ง€ ์œ ์šฉํ•œ ๊ธฐ์‚ฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ, ์ง€์› ์ค‘๋‹จ์ด ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š”์ง€ ์ดํ•ดํ•˜๋ฏ€๋กœ
์š”์ฒญ์˜ ๊ณผ๊ฑฐ, ํ˜„์žฌ ๋ฐ ๋ฏธ๋ž˜์— ๋Œ€ํ•œ ๋…ผ์˜๋Š” ์–ด๋– ํ•œ ์ •๋ณด๋„ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์„ค๋ช…์€ ํ˜ผ๋ž€์„ ๋”ํ•  ๋ฟ์ž…๋‹ˆ๋‹ค. ์•„๋‹ˆ๋ฉด ๋‚ด๊ฐ€ ๋” ํ•  ์ผ์ด ์žˆ์Šต๋‹ˆ๊นŒ
์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๊ณ  ๋ช…ํ™•ํžˆํ•˜์ง€ ์•Š์Šต๋‹ˆ๊นŒ? ๊ทธ ๋ง๋ฟ์ด๋ผ๋ฉด
์š”์ฒญ์€ ๊ทธ๊ฒƒ๋ณด๋‹ค ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋Œ€์‹ 
์šฐ๋ฆฌ๊ฐ€ ํ•ด์•ผ ํ•  ์ผ์ด ๋” ์žˆ์Œ์„ ์•”์‹œํ•ฉ๋‹ˆ๋‹ค.

๋ผ๊ณ  ๋งํ•˜๋ฉด ๊ฐ€์žฅ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค(๊ธฐ์‚ฌ ๋งํฌ
์„ค๋ช…) ๊ทธ๊ฒƒ์„ ๋Œ€์ฒดํ•˜๋Š” ๊ฒƒ, ๋˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ์•Œ์•„์•ผ ํ•  ํ–‰๋™.

Christopher Svanefalk [email protected]
2020๋…„ 2์›” 18์ผ ํ™”์š”์ผ ์˜คํ›„ 10:45

@SimpleSamples https://github.com/SimpleSamples ํŒจํ‚ค์ง€๋Š”
๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ ๋” ์ด์ƒ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋ช…ํ™•ํ•˜๊ฒŒ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. NPM์€ ๋‹จ์ˆœํžˆ
๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€.

์‚ฌ์šฉ ์ค‘๋‹จ์ด ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š”์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ๋‹ค๋ฉด ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
์œ ์šฉํ•œ ๊ธฐ์‚ฌ Google ๊ฒ€์ƒ‰ ๋ฉ€๋ฆฌ.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/request/request/issues/3142?email_source=notifications&email_token=ACK22R4G7LHULMPO6DHH273RDTIP7A5CNFSM4HCP6LRKYY2PNVWWK3TUL52HS4DFVREXG43VMXHJKTDNMV
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/ACK22R7UFQSYKW7NEYZ4OTDRDTIP7ANCNFSM4HCP6LRA .

์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ๋งํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ํ•ด๋‹น๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋ž˜, ๋งฅ๋ฝ์„ ์ดํ•ดํ•˜๊ณ  ๊ฒฐ์ •์— ๋Œ€ํ•œ ์ด์œ ๋ฅผ ์•Œ๊ณ  ์‹ถ์–ดํ•˜๊ฑฐ๋‚˜ ๋‹จ๊ณ„์  ํ์ง€์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ์•Œ๊ณ  ์‹ถ์–ดํ•˜๋Š” ์‚ฌ๋žŒ์€ ์—ฟ๋จน์–ด๋ผ. :NS
์ง„์ง€ํ•˜๊ฒŒ ๋งํ•ด์„œ ๊ฒฝ๊ณ ์— "์™œ"๋ฅผ ์ถ”๊ฐ€ํ–ˆ๋‹ค๋ฉด ํ˜ผ๋ž€์„ ๋ง‰์„ ์ˆ˜ ์žˆ์—ˆ์„๊นŒ์š”?

"npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด์œ ๋Š” #3142

๋‹น์‹ ์ด ๋งž์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” "์™œ"๋ถ€๋ถ„์„ ๋ณด์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

์—์ŠคํŽœ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ผ์Šต๋‹ˆ๋‹ค.

"์™œ"

@SimpleSamples ์ œ๊ฐ€ ์˜คํ•ดํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค๋งŒ, ์ €๋Š” ์ •๋ง๋กœ ํ˜ผ๋ž€์„

๋ฌด์—‡์ด๋“  ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์ƒ๊ฐ์€ ์–ด๋””์„œ ์–ป๋‚˜์š”? ์‚ฌ์šฉ ์ค‘๋‹จ์€ ์‚ฌ์šฉ ์ค‘๋‹จ์ผ ๋ฟ์ด๋ฉฐ, ์ด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค.

์š”์ฒญ์ด ์‚ฌ์šฉํ•˜๋Š” ํŒจํ„ด์—๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋Œ€๋กœ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ƒํƒœ๊ณ„์—๋Š” ์—ฌ์ „ํžˆ ์ด๋Ÿฌํ•œ ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฑฐ๋Œ€ํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ๊ฒฝํ—˜์— ๋”ฐ๋ฅด๋ฉด ๊ฐœ๋ฐœ์ž์˜ ํ—ˆ์˜์‹ฌ๊ณผ ์˜ค๋งŒํ•จ์„ ์œ„ํ•ด ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ์ฝ”๋“œ ๊ธฐ๋ฐ˜์„ ์ง€์†์ ์œผ๋กœ ์ฐข์„ ์ˆ˜ ์žˆ๋Š” ์ž์›์„ ๊ฐ€์ง„ ์†Œ์ˆ˜์˜ ๋ชฉ์†Œ๋ฆฌ(๋Œ€๋ถ€๋ถ„์˜ ๋Œ€๊ธฐ์—…)๋ณด๋‹ค ํ›จ์”ฌ ๋” ํฐ ์ปค๋ฎค๋‹ˆํ‹ฐ์ž…๋‹ˆ๋‹ค.

์ด ํ•จ์ •์— ๋น ์ง€๊ฒŒ ๋œ ๊ฒƒ์„ ์œ ๊ฐ์Šค๋Ÿฝ๊ฒŒ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ํฐ ๋„์›€์ด ๋˜์—ˆ์œผ๋ฉฐ ๊ท€ํ•˜์˜ ๊ฒฐ์ •์„ ์žฌ๊ณ ํ•˜๊ธฐ๋ฅผ ์ง„์‹ฌ์œผ๋กœ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋„ค, ์ด๊ฒŒ ์—†์–ด์ง„๊ฒŒ ์•„์‰ฌ์›Œ์š”. ์ฝœ๋ฐฑ์€ ๋‚˜์˜์ง€ ์•Š์œผ๋ฉฐ ์•ฝ์†์ด๋‚˜ ๋น„๋™๊ธฐ๋„ ๋Œ€๊ธฐ ์ค‘์ž…๋‹ˆ๋‹ค.

@SimpleSamples ๊ฐ€ ๋†“์น˜๊ณ  ์žˆ๋Š” ๋ถ€๋ถ„์€ ๋ถ™์—ฌ๋„ฃ์€ ๋‚˜๋จธ์ง€ ๊ฒฝ๊ณ  ๊ฐ€ ์‚ฌ์šฉ์ž๋ฅผ ์—ฌ๊ธฐ๋กœ ๋ฐ๋ ค์˜จ package.json (๋˜๋Š” ๋‹ค๋ฅธ ๊ฒฝ๊ณ ์˜ ์›์ธ์ด ๋˜๋Š” ๋ชจ๋“  ๊ฒƒ)์— ๋Œ€ํ•ด ์กฐ์น˜๋ฅผ ์ทจํ•˜๊ณ  ์‹ถ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด request ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋“  ํŒจํ‚ค์ง€๋ฅผ ์ด์ œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ• ๊นŒ์š”?

๊ทธ๋Ÿฐ ํŒจํ‚ค์ง€ ํ•˜๋‚˜์—์„œ request ๋ฅผ @root/request ๋กœ ๊ต์ฒดํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ์‹ค์ œ๋กœ ๋“œ๋กญ์ธ ๊ต์ฒด๋ผ๊ณ  ๊ฐ€์ •ํ–ˆ์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค .

๋‚˜๋Š” ๋˜ํ•œ request ๋ฅผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฐ”๊พธ๋ ค๊ณ  ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.

const httprequest = require('http').request; const httpsrequest = require('https').request;

... ๊ทธ๋ฆฌ๊ณ ...

const request = parsedUrl.protocol === 'http' ? httprequest : httpsrequest`

...ํ•˜์ง€๋งŒ ๊ทธ๊ฒƒ๋„ ์ž‘๋™ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.

์ž, ์ด์ œ ๋ฌด์—‡์„? ์‹ค์ œ๋กœ ์•ฝ์†์„ ์ดํ–‰ํ•˜๋Š” ๋“œ๋กญ์ธ ๊ต์ฒด๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ, ์šฐ๋ฆฌ๋Š” ๋ชจ๋‘ node_modules ์—์„œ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€์— ์˜์กดํ•˜๋Š” ์—ฌ๋Ÿฌ ์ข…์†์„ฑ์„ ๊ฐ€์ง€๊ณ  ์‚ด์•„์•ผ ํ•ฉ๋‹ˆ๊นŒ? ์œ ์ง€? ๊ทธ๋ฆฌ๊ณ  ์™œ?

request ์—ฌ๋Ÿฌ ์ธก๋ฉด์—์„œ ๊ตฌ์‹์ด ๋˜์—ˆ์ง€๋งŒ ์ ์ ˆํ•œ ๋“œ๋กญ์ธ ๊ต์ฒด๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š๊ณ  ์ด ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ์œผ๋กœ์จ 41K ๋ชจ๋“ˆ์€ ์ด์ œ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€์— ์ง์ ‘ ์˜์กดํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ 41K ๋ชจ๋“ˆ ์ค‘ ํ•˜๋‚˜ ์ด์ƒ์„ ์ข…์†์„ฑ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ๊ณ ๋ คํ•˜๋ฉด ์˜ํ–ฅ์„ ๋ฐ›๋Š” ํŒจํ‚ค์ง€๊ฐ€ ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ๋Š” ์•„๋‹ˆ๋”๋ผ๋„ ์ˆ˜์‹ญ๋งŒ ๊ฐœ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌผ๋ก , ์ผ๋ถ€ ํŒจํ‚ค์ง€์˜ ๊ฒฝ์šฐ request ๋ฅผ fetch , axios , superagent ๋˜๋Š” Node.js์˜ ๊ธฐ๋ณธ http.request ์™€ ๊ฐ™์€ ๊ฒƒ์œผ๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด ์‰ฝ์Šต๋‹ˆ๋‹ค axios http.request & https.request . ๊ทธ๋Ÿฌ๋‚˜ ์˜ˆ๋ฅผ ๋“ค์–ด. ์š”์ฒญ์ด ๋‹ค๋ฅธ ์š”์ฒญ์œผ๋กœ ์—ฐ๊ฒฐ๋˜๋Š” ๊ฒฝ์šฐ( html2canvas-proxy ), ๋„๋Œ€์ฒด ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ์•Œ์•„๋‚ด๊ธฐ ์œ„ํ•ด ๊ณ ๊ตฐ๋ถ„ํˆฌํ•ฉ๋‹ˆ๋‹ค... ๊ทธ๋ฆฌ๊ณ  ๊ต์ฒดํ•˜๋Š” ๋ฐ ๋งŽ์€ ์‹œ๊ฐ„์„ ํ• ์• ํ•  ์—ฌ์œ ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๋” ์ค‘์š”ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ๋™์•ˆ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์ฝ”๋“œ ๋ช‡ ์ค„๋งŒ ์žˆ์œผ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ํ•ญ์ƒ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž์™€ ํ•จ๊ป˜ ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ๋กœ๋“œ๋˜๋Š” ๋‹ค์ˆ˜์˜ ์ƒํ˜ธ ์˜์กด์ ์ธ ํŒจํ‚ค์ง€์— ๋„ˆ๋ฌด ๋งŽ์ด ์˜์กดํ•˜๋Š” ๊ฒƒ์— ์ง€์ณค์Šต๋‹ˆ๋‹ค. ์˜ˆ, ์ œ ์ƒ๊ฐ์—๋Š” ๋งŽ์€ ๋ฌด๊ฑฐ์šด ์ง์„ ์ œ3์ž์—๊ฒŒ ๋„˜๊ธธ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ ๋Œ€์‹  ์ฒ˜๋ฆฌํ•ด์•ผ ํ•  ๋‹ค๋ฅธ ๊ณจ์นซ๊ฑฐ๋ฆฌ๊ฐ€ ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž๋Š” ์ž˜๋ชป๋œ ๋ณด์•ˆ ๊ฐ๊ฐ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 4๋…„ ์ „ ์™ผ์ชฝ ํŒจ๋“œ ์˜ ์ „์ฒด ์‹คํŒจ๋Š” ๊ด€๋ จ๋œ ์œ„ํ—˜๊ณผ ๊ด€๋ จํ•˜์—ฌ ์‚ฌ๋žŒ๋“ค์˜ ๋ˆˆ์„ ๋œจ๊ฒŒ ํ•˜๋Š” ๋ฐ ์‹คํŒจํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ๋„ ์ฐจ์ด๊ฐ€ ์—†์„ ๊ฒƒ์ด๋ผ๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜๋„ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ฑฐ๋‚˜ ์†์ƒ๋œ ํŒจํ‚ค์ง€ ํ•˜๋‚˜๊ฐ€ ์ „์ฒด ์ƒํƒœ๊ณ„์—์„œ ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ํŒจํ‚ค์ง€์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ๊ฐ•์กฐํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ฒ„๋ ค์ง€๊ณ , ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ฑฐ๋‚˜, ์‹ฌ์ง€์–ด ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์ค‘๋‹จ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์€ ๋”์šฑ ์•…ํ™”๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ๋ชจ๋‘ ์ข…์†์„ฑ ์ง€์˜ฅ์—์„œ ์‚ด๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค...

ํ•˜์ง€๋งŒ ์ด๋ด... ์ ์–ด๋„ ๊ทธ๊ฒƒ์€ JS ๊ฐœ๋ฐœ์ž๋“ค์ด $%#@ ์—‰๋ง์ง„์ฐฝ์„ ์ •๋ฆฌํ•˜๋ผ๋Š” ์š”๊ตฌ๊ฐ€ ํ•ญ์ƒ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค...

@jslegers

๊ทธ๋ž˜๋„ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ฑฐ๋‚˜ ์†์ƒ๋œ ํŒจํ‚ค์ง€ ํ•˜๋‚˜๊ฐ€ ์ „์ฒด ์ƒํƒœ๊ณ„์—์„œ ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ํŒจํ‚ค์ง€์— ์˜ํ–ฅ์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ๊ฐ•์กฐํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ž˜๋ชป๋œ ์œ ์ผํ•œ ๊ฒƒ์€ ๋‹น์‹ ๊ณผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ๊ฒช๊ณ  ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ๊ณตํ™ฉ์ž…๋‹ˆ๋‹ค. leftpad ๊ฐ€) ์‚ฌ๋ผ์กŒ์Šต๋‹ˆ๋‹ค. ์‚ญ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ ๊ทธ๋Ÿด ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์•„๋ฌด๋ฐ๋„ ๊ฐ€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ ์ž‘๋™ํ•˜๋ฉด ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๊ณ„์† ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์–‘์„ฑ ๊ฒฝ๊ณ ๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ํŒจํ‚ค์ง€์— ์˜ํ–ฅ ์„

๋‚˜๋Š” ๋˜ํ•œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์š”์ฒญ์„ ๋Œ€์ฒดํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค ...

๋‹นํ™ฉํ•˜์ง€ ๋งˆ์„ธ์š”. ์กด์žฌํ•˜์ง€ ์•Š๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋Š” ์‹œ๋„๋ฅผ ์ค‘๋‹จํ•˜์‹ญ์‹œ์˜ค. ์›ํ•˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค. ์š”์ฒญ์˜ ์‚ฌ์šฉ ์ค‘๋‹จ์œผ๋กœ ์ธํ•ด ํŒจํ‚ค์ง€๊ฐ€ ์†์ƒ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ ์ฐจ์ ์œผ๋กœ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž๋Š” ๋‹ค๋ฅธ ํŒจํ‚ค์ง€๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” ๊ทธ๋ ‡์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž‘์€ ๋ฉ”์‹œ์ง€ ํ•˜๋‚˜๊ฐ€ ํ‘œ์‹œ๋˜๋Š” ๊ฒƒ ์™ธ์—๋Š” ๋‹ฌ๋ผ์ง„ ๊ฒƒ์ด ์—†์Šต๋‹ˆ๋‹ค.

JS ๊ฐœ๋ฐœ์ž๊ฐ€ $%#@ ์—‰๋ง์ง„์ฐฝ์„ ์ •๋ฆฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ์š”๊ตฌ๊ฐ€ ํ•ญ์ƒ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค...

ํ˜ผ๋ž€์ด ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋ƒฅ ์ง„ํ–‰.

์–‘์„ฑ ๊ฒฝ๊ณ ๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ํŒจํ‚ค์ง€์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด API ๋˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ผ๋ถ€๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๊ณต์‹์ ์œผ๋กœ "๊ตฌ์‹"์œผ๋กœ ์ง€์ •ํ•˜๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ๊ฒƒ์„ ์„ ํƒํ•˜๋„๋ก ์ ๊ทน์ ์œผ๋กœ ๊ถŒ์žฅํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

Deprecation์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๊ณต์‹์ ์œผ๋กœ ์ง€์›ํ•˜๋Š” ๊ฒƒ๊ณผ ๊ณต์‹์ ์œผ๋กœ ์ง€์›์„ ์ค‘๋‹จํ•˜๋Š” ๊ฒƒ ์‚ฌ์ด์˜ ์ค‘๊ฐ„ ๋‹จ๊ณ„๋กœ ์‚ฌ์šฉ๋˜์–ด ๋” ์ด์ƒ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๊ฑฐ๋‚˜ ์ด์ „ ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋˜์ง€ ์•Š์„ ๋•Œ๊นŒ์ง€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํ•ญ๋ชฉ์„ ๋Œ€์ฒดํ•  ์‹œ๊ฐ„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋Š” ๋‹น์‹ ์„ ๊ธด์žฅํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ํ–‰๋™์„ ์ด‰๊ตฌํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ ์ค‘๋‹จ์˜ ์š”์ ์€ ๊ฐœ๋ฐœ์ž์—๊ฒŒ "์œ ์˜ˆ ๊ธฐ๊ฐ„"์„ ์ œ๊ณตํ•˜์—ฌ ๋ˆ„๊ตฐ๊ฐ€ ํ”Œ๋Ÿฌ๊ทธ๋ฅผ ๋ฝ‘๊ธฐ ์ „์— ์ฝ”๋“œ๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ์šฉ๋„๋กœ ์‚ฌ์šฉ๋˜์–ด์„œ๋Š” ์•ˆ๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ ์ค‘๋‹จ์€ "์ €ํฌ API๊ฐ€ ์ตœ์‹  ์ฝ”๋”ฉ ํ‘œ์ค€์„ ๋”ฐ๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค" ๋˜๋Š” "์ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋” ์ด์ƒ ์œ ์ง€ํ•  ์‹œ๊ฐ„์ด ์—†์Šต๋‹ˆ๋‹ค"๋ผ๊ณ  ์‚ฌ์šฉ์ž์—๊ฒŒ ์•Œ๋ฆฌ๊ธฐ ์œ„ํ•œ ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค... ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๊ฝค ์•ˆ์ •์ ์ด๊ณ  ์˜ˆ์˜๋”๋ผ๋„ ๋ชจ๋“  ์‚ฌ์šฉ ์‚ฌ๋ก€์˜ +99%์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ์— ์•ˆ์ „ํ•˜๋ฉฐ ์ ์–ด๋„ ํ–ฅํ›„ 10๋…„ ๋™์•ˆ ๊ณ„์†ํ•ด์„œ ์ž˜ ์ž‘๋™ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์‚ฌ์šฉ ์ค‘๋‹จ์˜ ์˜๋ฏธ๊ฐ€ ์•„๋‹ˆ๋ฉฐ ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ทธ๋Ÿฌํ•œ ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ๋‚˜์œ ์„ ๋ก€ IMO๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ npm install ๋กœ๊ทธ๊ฐ€ ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋กœ ๊ฐ€๋“ ์ฐจ ์žˆ๋Š” ๊ฒƒ์€ ๋ณด๊ธฐ ํ‰ํ•œ ์ผ์ž…๋‹ˆ๋‹ค. ์กฐ์žกํ•ด ๋ณด์ธ๋‹ค. ์ผ์ข…์˜ ์œ„ํ—˜ ์‹ ํ˜ธ์ด๋ฉฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋‚˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋‚˜์œ ์ฒซ์ธ์ƒ์„ ์ค๋‹ˆ๋‹ค. ํŠนํžˆ ์‚ฌ๋žŒ๋“ค์ด ์‹ค์ œ๋กœ ๋‹น์‹ ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ/ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋‹น์‹ ์—๊ฒŒ ๋ˆ์„ ์ง€๋ถˆํ•˜๊ณ  ์žˆ๋‹ค๋ฉด, ๋‹น์‹ ์€ ๊ทธ๋“ค์—๊ฒŒ ๊ฒฝ๊ณ  ์—†์ด ๋ฉ‹์ง€๊ณ  ๊นจ๋—ํ•œ ์„ค์น˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ๋ฅผ ์›ํ•ฉ๋‹ˆ๋‹ค.

์ž‘์€ ๋ฉ”์‹œ์ง€ ํ•˜๋‚˜๊ฐ€ ํ‘œ์‹œ๋˜๋Š” ๊ฒƒ ์™ธ์—๋Š” ๋‹ฌ๋ผ์ง„ ๊ฒƒ์ด ์—†์Šต๋‹ˆ๋‹ค.

๊ทธ ์ž‘์€ ๋ฉ”์‹œ์ง€ ํ•˜๋‚˜๋Š” ์—‰์„ฑํ•ด ๋ณด์ด๊ณ  ๋‹ค๋ฅธ ๋ชฉ์ ์€ ์—†์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค... ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€๋ฅผ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ๊ต์ฒดํ•˜๋ผ๋Š” ์š”์ฒญ์ž…๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์€ ๋‹น์‹ ์—๊ฒŒ๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ๋‚˜์™€ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋Š” ๋ถ„๋ช…ํžˆ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

ํ˜ผ๋ž€์ด ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋ƒฅ ์ง„ํ–‰.

๋ณ€ํ™”์™€ ์ง„๋ณด๋ฅผ ๊ตฌ๋ถ„ ๋ชปํ•˜๋Š” ๋ถ„ ์ค‘ ํ•œ ๋ถ„์ด์‹  ๊ฒƒ ๊ฐ™์•„์š”.

์–ด๋Š ์ชฝ์ด๋“ , postman-request ์‚ฌ์šฉ์„ ์ œ์•ˆํ•œ ์˜๊ฒฌ์—์„œ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. @root/request ์™€ ๋‹ฌ๋ฆฌ, ๊ทธ๊ฒƒ์€ ๋“œ๋กญ์ธ ๊ต์ฒด๋กœ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ ๊ฐ™์œผ๋ฏ€๋กœ ๋‹น๋ถ„๊ฐ„์€ ๋ชจ๋“  ํŒจํ‚ค์ง€๋ฅผ ์ด ํŒจํ‚ค์ง€๋กœ ์—…๋ฐ์ดํŠธํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค...

@SimpleSamples ๊ฐ€ ๋†“์น˜๊ณ  ์žˆ๋Š” ๋ถ€๋ถ„์€ ๋ถ™์—ฌ๋„ฃ์€ ๋‚˜๋จธ์ง€ ๊ฒฝ๊ณ  ๊ฐ€ ์‚ฌ์šฉ์ž๋ฅผ ์—ฌ๊ธฐ๋กœ ๋ฐ๋ ค์˜จ package.json (๋˜๋Š” ๋‹ค๋ฅธ ๊ฒฝ๊ณ ์˜ ์›์ธ์ด ๋˜๋Š” ๋ชจ๋“  ๊ฒƒ)์— ๋Œ€ํ•ด ์กฐ์น˜๋ฅผ ์ทจํ•˜๊ณ  ์‹ถ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ„ฐ์น˜!

์ง€์ ์€ ํ–ˆ์ง€๋งŒ ์ธ์‹ ๊ณต๊ฒฉ์€ ๊ณ„์†๋˜๊ณ  ์žˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„์€ ๊ธฐ์ˆ ์ ์œผ๋กœ ๋งค์šฐ ์ง€๋Šฅ์ ์ด๊ณ  ์œ ๋Šฅํ•˜์ง€๋งŒ ๊ฐœ์ธ ์ „๋ฌธ ์ง€์‹์—์„œ ๊ฐœ์„ ์˜ ์—ฌ์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง€์ ์€ ํ–ˆ์ง€๋งŒ ์ธ์‹ ๊ณต๊ฒฉ์€ ๊ณ„์†๋˜๊ณ  ์žˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„์€ ๊ธฐ์ˆ ์ ์œผ๋กœ ๋งค์šฐ ์ง€๋Šฅ์ ์ด๊ณ  ์œ ๋Šฅํ•˜์ง€๋งŒ ๊ฐœ์ธ ์ „๋ฌธ ์ง€์‹์—์„œ ๊ฐœ์„ ์˜ ์—ฌ์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์œ ๊ฐ์Šค๋Ÿฝ๊ฒŒ๋„ ๋˜‘๋˜‘ํ•ด์ง„๋‹ค๊ณ  ํ•ด์„œ ์‚ฌ๋žŒ๋“ค์ด ๊ฐ์ •์ด ํŒ๋‹จ์„ ํ๋ฆฌ๊ฒŒ ํ•˜๋Š” ๊ฒƒ์„ ๋ง‰์„ ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ์‚ฌ์šฉ ์ค‘์ง€์˜ ๋ชฉ์ ์— ๋Œ€ํ•œ ํ•ฉ๋‹นํ•œ ์ด์œ ๋‚˜ ์ผ๋ฐ˜์ ์ธ ํ•ฉ์˜ ์—†์ด ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ์ผ์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ๋”์šฑ ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค.

์–ด์จŒ๋“  ๋‚˜๋Š” ๋‚ด ์ฃผ์žฅ์„ ์•„์ฃผ ๋ช…ํ™•ํ•˜๊ฒŒ ๋งํ•œ ๊ฒƒ ๊ฐ™๋‹ค. @mikeal , @reconbot ๋˜๋Š” ์ด ํ”„๋กœ์ ํŠธ์˜ ๋‹ค๋ฅธ ์œ ์ง€ ๊ด€๋ฆฌ์ž๊ฐ€ postman-request ์— ๋Œ€ํ•œ ์™„์ „ํ•œ ๋“œ๋กญ์ธ ๋Œ€์ฒดํ’ˆ์œผ๋กœ request postman-request ๋ฅผ ๊ณต์‹์ ์œผ๋กœ ์ œ์•ˆํ•˜๋„๋ก ๊ถŒ์žฅํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋งˆ๋ฌด๋ฆฌํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค @root/request request ์˜ ์ œํ•œ๋œ ํ•˜์œ„ ์ง‘ํ•ฉ์ด ํ•„์š”ํ•˜๊ณ  ์˜ˆ๋ฅผ ๋“ค์–ด ์‹ ๊ฒฝ ์“ฐ์ง€ ์•Š๋Š” ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•œ @root/request . ์ŠคํŠธ๋ฆผ. ์ด๋ฅผ ํ†ตํ•ด ๋ชจ๋“  ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž๊ฐ€ request ํ•˜๊ณ  ์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด ๋ช‡ ๋ถ„ ์ด์ƒ์˜ ๊ฐœ๋ฐœ ์‹œ๊ฐ„์„ ์†Œ๋น„ํ•˜์ง€ ์•Š๊ณ  ์ „์ฒด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋˜๋Š” ์•ฑ์„ ๋ฆฌํŒฉํ„ฐ๋งํ•  ํ•„์š” ์—†์ด ์„ฑ๊ฐ€์‹  ์‚ฌ์šฉ ์ค‘๋‹จ ๋ฉ”์‹œ์ง€๋ฅผ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@mikeal ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํ˜„์‹ค์—์„œ ์˜ค๋Š”, ๋‚˜๋Š” ๋‹น์‹ ์—๊ฒŒ ์šฐ๋ฆฌ ์ค‘ ์ผ๋ถ€ ๋˜๋Š” ์•„๋งˆ๋„ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋„์›€์ด ๋  ๋ฐ˜์„ฑ์˜ ์ˆœ๊ฐ„์„ ์š”์ฒญํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์— ์ด์–ด 2๊ฐœ์˜ ์ดํ›„ http ์š”์ฒญ ๋ชจ๋“ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค: r2 ๋ฐ ๋ฒคํŠธ.

์š”์ฒญ ๊ต์ฒด ์š”์ฒญ ์ค‘ ํ•œ ๊ณณ์œผ๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ์˜ ์ฐจ์ด์ , ์ด์  ๋ฐ ํ”Œ๋Ÿฌ์Šค ๋˜๋Š” ๋งˆ์ด๋„ˆ์Šค์— ๋Œ€ํ•œ ๊ฐ„๋žตํ•œ ์š”์•ฝ์„ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‹น์‹ ์˜ ์ผ์„ ๋ฏฟ์Šต๋‹ˆ๋‹ค.

์ด ์‹œ๊ฐ„ ๋™์•ˆ ๊ฐ์‚ฌํ•˜๊ณ  ์š”์ฒญ ๋ชจ๋“ˆ์˜ ์ˆ˜๋…„๊ฐ„์— ๋Œ€ํ•ด ๊ฐ์‚ฌํ•˜๋‹ค๊ณ  ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

-๋ฆญ

request-promise-native ๋„ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๊ฑฐ๋‚˜ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์˜ฌ๋ฐ”๋ฅธ๊ฐ€์š”?

[email protected] : ์š”์ฒญ์ด ์ค‘๋ณต๋˜์—ˆ์Šต๋‹ˆ๋‹ค .... ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค

[email protected] : ์š”์ฒญ์ด ์ค‘๋ณต๋˜์—ˆ์Šต๋‹ˆ๋‹ค .... ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค

์–ธ์ œ๋‚˜์ฒ˜๋Ÿผ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. NPM์€ ๋‹จ์ˆœํžˆ ๊ฒฝ๊ณ ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ์‚ญ์ œ๋œ ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๊ทธ๋ž˜ ์ด๊ฒŒ ์ข‹๋‹ค

4,476,352๊ฐœ์˜ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ, 52,377๊ฐœ์˜ ํŒจํ‚ค์ง€์—์„œ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
์ „์„ค๊ณผ ์ž‘๋ณ„์„ ๊ณ ํ•˜์‹ญ์‹œ์˜ค.

์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ์‚ญ์ œ๋œ ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

@jleppert ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ท€ํ•˜๊ฐ€ ๋…ผํ‰ํ•˜๋Š” ๋ฌธ์ œ๋ฅผ ์ฝ์œผ์‹ญ์‹œ์˜ค.

๋‚˜๋Š” ๋ฆฌ๋ˆ…์Šค์—์„œ ๊ฐ๋„๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•œ ๋‹ค์Œ Windows์—์„œ ๋‘˜ ๋‹ค ํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค์—์„œ npm install -g @ angular / cli @ latest ๋ช…๋ น์„ ์‹คํ–‰ํ•œ ํ›„ ์ด ์˜ค๋ฅ˜๊ฐ€ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

C:\Users\Hanzell>npm install -g @angular/cli@latest
npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
C:\Users\Hanzell\AppData\Roamingnpm\ng -> C:\Users\Hanzell\AppData\Roamingnpmnode_modules\@angular\cli\bin\ng

@angular/ cli @
๋…ธ๋“œ ./bin/postinstall/script.js

  • @angular/ cli @
    188.027์ดˆ ๋™์•ˆ 205๋ช…์˜ ๊ธฐ์—ฌ์ž๊ฐ€ 260๊ฐœ์˜ ํŒจํ‚ค์ง€๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ ๋‹ค์Œ ์ €์žฅ์†Œ๋ฅผ ๋งŒ๋“ค์—ˆ๊ณ  ์ด๊ฒƒ์ด ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

C:\Users\Hanzell\Desktop>ng ์ƒˆ
? ์ƒˆ ์ž‘์—… ๊ณต๊ฐ„๊ณผ ์ดˆ๊ธฐ ํ”„๋กœ์ ํŠธ์— ์–ด๋–ค ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ํ—
? Angular ๋ผ์šฐํŒ…์„ ์ถ”๊ฐ€ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ์š”
? ์–ด๋–ค ์Šคํƒ€์ผ์‹œํŠธ ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? CSS
CREATE hola/angular.json(3551๋ฐ”์ดํŠธ)
CREATE hola/package.json(1281๋ฐ”์ดํŠธ)
CREATE hola/README.md(1021๋ฐ”์ดํŠธ)
hola/tsconfig.json ์ƒ์„ฑ(543๋ฐ”์ดํŠธ)
CREATE hola/tslint.json(1953๋ฐ”์ดํŠธ)
CREATE hola/.editorconfig(246๋ฐ”์ดํŠธ)
CREATE hola/.gitignore(631๋ฐ”์ดํŠธ)
CREATE hola/browserslist(429๋ฐ”์ดํŠธ)
CREATE hola/karma.conf.js(1016๋ฐ”์ดํŠธ)

  • ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘...npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142g.spec.json(270 ๋ฐ”์ดํŠธ) ์ฐธ์กฐ
    npm ์˜ค๋ฅ˜! '...f8x\n2SbOSCsT+zdXwIaf' ๊ทผ์ฒ˜์—์„œ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋™์•ˆ JSON ์ž…๋ ฅ์ด ์˜ˆ๊ธฐ์น˜ ์•Š๊ฒŒ ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\Hanzell\AppData\Roamingnpm-cache_logs\2020-03-01T05_15_55_441Z-debug.log
ร— ํŒจํ‚ค์ง€ ์„ค์น˜์— ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
๋„์‹ ์›Œํฌํ”Œ๋กœ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
CREATE hola/src/assets/.gitkeep(0๋ฐ”์ดํŠธ

๋•๋‹ค!

@RiveraHan ๋‹น์‹ ์ด ๊ฒช๊ณ  ์žˆ๋Š” ๋ฌธ์ œ๋Š” request ๊ฐ€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฒƒ๊ณผ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๊ณ  ๋ณด๋‹ˆ ๊ถ๊ธˆํ–ˆ์Šต๋‹ˆ๋‹ค. JS ์‹œ์ ˆ ์ดํ›„๋กœ angular๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜์ง€๋งŒ ํ•œ ๋ฒˆ ์‚ฌ์šฉํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์ „์—ญ ๋ชจ๋“ˆ์— angular cli๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์กฐ๊ธˆ ๋‹ค๋ฅด๊ฒŒ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. npm 6.14.1 , node 12.16.1 ๋ฐ Debian GNU/Linux๋กœ ๋‹ค์Œ์„ ํ…Œ์ŠคํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

mkdir wrk-dir
cd wrk-dir
mkdir w1
cd w1
npm init -y
npm install @angular/cli --save-dev # this puts `ng` in `wrk-dir/w1/node_modules/.bin/ng`
cd ..
w1/node_modules/.bin/ng new my-app
cd my-app
../w1/node_modules/.bin/ng serve --open # browser will open with compiied results

Angular cli๋ฅผ ์ „์—ญ์ ์œผ๋กœ ์„ค์น˜ํ•˜๋Š” ๊ฒฝ์šฐ ์œ„์˜ ../w1/node_modules/.bin/ ๋ฐ w1/node_modules/.bin/ ์ œ๊ฑฐํ•˜๋ฉด ์ „์—ญ์ ์œผ๋กœ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@millette Linux ubuntu ๋ฐ Windows 10์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. angular๋ฅผ ์ฒ˜์Œ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@RiveraHan ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. npm ๊ฒฝ๊ณ ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉํ•˜๋Š” ์„ค์ •์ด npm ๊ฒฝ๊ณ ์—์„œ ์‹คํŒจํ•˜๋ฉด ๊ตฌ์„ฑ์„ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@csvan ํ•˜์ง€๋งŒ ๋‚ด ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ์—์„œ ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์—ด ๋•Œ node_modules ํด๋”๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ๊นจ๋‹ฌ์•˜๊ณ  node_modules ํด๋”๋ฅผ ๋‹ค์‹œ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ์•ฝ๊ฐ„์˜ ์—ฐ๊ตฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  npm install ๋ช…๋ น์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๊ณ  ๋™์ผํ•œ ๋‹ค๋ฅธ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. .

@RiveraHan ์˜ˆ, ํ•˜์ง€๋งŒ ์ด๊ฒƒ์€ request ๋˜๋Š” npm๊ณผ ์•„๋ฌด ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ์–ด๋–ป๊ฒŒ๋“  ๊ทธ๋ ‡๊ฒŒ ํ•˜๋„๋ก ๊ตฌ์„ฑ๋˜์ง€ ์•Š๋Š” ํ•œ npm ๊ฒฝ๊ณ ๋Š” ์„ค์น˜๋ฅผ ์ค‘๋‹จํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ํ™˜๊ฒฝ์ด npm ๊ฒฝ๊ณ ๋ฅผ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ์ด์œ ์™€ ์ด์— ๋Œ€ํ•ด ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ์„ ์กฐ์‚ฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ๊ท€ํ•˜์˜ ๊ฒฝ์šฐ์—๋„ ๋ฌธ์ œ๊ฐ€ ๋˜๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. ์™„์ „ํžˆ ๋‹ค๋ฅธ ๊ฒƒ์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

@anton-bot์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์ธ์ˆ˜ํ•˜๊ณ  ํ˜„์žฌ ๊ด€๋ฆฌ์ž๊ฐ€ ํ•  ์‹œ๊ฐ„์ด ์—†๋Š” ๋ชจ๋“  ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ๊ทธ๊ฒƒ์„ ์‹คํ˜„ํ•˜๊ธฐ ์œ„ํ•ด ์Šค์Šค๋กœ ์ผ์„ ํ•  ์˜ํ–ฅ์ด ์—†๋‹ค๋ฉด ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๊ทธ๋“ค์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋งํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์˜ค๋งŒํ•œ ์ผ์ž…๋‹ˆ๋‹ค. ์˜คํ”ˆ ์†Œ์Šค์ž…๋‹ˆ๋‹ค.

@mikeal ์€ request ๊ฐ€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์ด์œ ๋ฅผ ์•„์ฃผ ๋ช…ํ™•ํ•˜๊ฒŒ ์„ค๋ช…ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์ฑ…์ž„ ์žˆ๋Š” ์ผ์ด๊ณ  ์ข‹์€ ๊ฒฐ์ •์ด๋ฉฐ ๋˜๋Œ๋ฆด ๊ฐ€๋Šฅ์„ฑ์€ ๊ฑฐ์˜ ์—†์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์ด:

๋˜ํ•œ ์‹ค์ œ๋กœ ์‚ฌ๋žŒ๋“ค์€ ์š”์ฒญ์„ ์‚ฌ์šฉํ•˜๋Š” ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ๋Œ€์ฒดํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์—ฐ๊ฒฐ๋œ pull ์š”์ฒญ ์ค‘ ์ผ๋ถ€๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค. ์‚ฌ๋žŒ๋“ค์ด ํ•˜๊ณ  ์‹ถ์–ดํ•˜๋Š” ์•„์ด๋””์–ด๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ ๊ทธ ์‹œ๋Œ€์— "์™„๋ฒฝํ•˜๊ฒŒ ์ข‹์€ ์ฝ”๋“œ"์˜€๋˜ ๊ณ ๋Œ€ ๋ชจ๋“ˆ์— ์˜์กดํ•˜๋Š” ์“ฐ๋ ˆ๊ธฐ ๋ ˆ๊ฑฐ์‹œ ์ฝ”๋“œ๋กœ ๋๋‚˜๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค. ์†Œํ”„ํŠธ์›จ์–ด ์œ ์ง€ ๊ด€๋ฆฌ์˜ ์ผ๋ถ€๋Š” ์˜ค๋ž˜๋˜๊ณ  ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ชจ๋“ˆ์„ ์ œ๊ฑฐํ•˜๊ณ  ์ ๊ทน์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌ๋˜๋Š” ๋ชจ๋“ˆ๋กœ ๊ต์ฒดํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@ ์•ˆํ†ค - ๋ด‡ ๊ทธ๋ƒฅ ์‚ฌ์šฉ @root/request ๊ธฐ๋ณธ์ ์˜ 80 % ์ค€์ˆ˜ ๊ตฌํ˜„ ์ธ request ํ›„๋“œ ๊ทธ ์šฉ๋„ ํ˜„๋Œ€ ๋…ธ๋“œ HTTP API๋ฅผ.

@anton-bot ๋‹น์‹ ์€ ๋ถ„๋ช…ํžˆ ์‚ถ์˜ ๋ช‡ ๊ฐ€์ง€ ์‚ฌ์‹ค์„ ๋†“์น˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ์ด๊ฒƒ์€ ๋ฌด๋ฃŒ ์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ๊ด€๋ฆฌ์ž์—๊ฒŒ "๊ทธ๋ƒฅ ๊ทธ๋งŒ๋‘ฌ"๋ผ๊ณ  ๋งํ•  ๊ถŒ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.
  2. ์š”์ฒญ์ด ํŒ๋งค ๊ธฐํ•œ์„ ์ดˆ๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค(์‚ฌ์šฉ ๊ธฐํ•œ์ด ์ง€๋‚œ ๊ฒƒ์€ ์•„๋‹˜). ๋ฌด๊ฒ๊ณ  ๊ณ ํ’์Šค๋Ÿฌ์›Œ์กŒ์Šต๋‹ˆ๋‹ค.
  3. @mikeal ์€ ์š”์ฒญ์„ ๋Œ€์ฒดํ•˜๋Š” ์ตœ์†Œ ๋‘ ๊ฐœ์˜ ์ƒˆ ํŒจํ‚ค์ง€๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค ํ›จ์”ฌ ๊ฐ€๋ณ์Šต๋‹ˆ๋‹ค.
  4. ๊ท€ํ•˜์™€ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ๊ณ„์† ์‚ฌ์šฉํ•˜๊ธฐ๋ฅผ ์›ํ•˜๋Š” ๊ฒฝ์šฐ ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€์› ์ค‘๋‹จ์˜ ์–ด๋–ค ๊ฒƒ๋„ ๊ทธ๋ ‡๊ฒŒ ํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉํ•ดํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ ์ ์ฐจ์ ์œผ๋กœ ํŒจํ‚ค์ง€๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ๊ธฐํšŒ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, kraken-exchange ๋Š” 5.9MB์—์„œ 284KB๋กœ ์„ค์น˜๋˜์–ด ๋ฒคํŠธ(Bent) ๋กœ ์ „ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

@csvan ์€ ๋‹น์‹ ์ด "๋งค์šฐ ์˜ค๋งŒํ•˜๋‹ค"๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์‚ฌ์šฉํ–ˆ๋˜ ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋” ์ •์ค‘ํ•œ ํ‘œํ˜„์ด๋‹ค.

@anton-bot ๊ธฐ๋ณธ์ ์œผ๋กœ ์ตœ์‹  Node HTTP API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์š”์ฒญ์˜ 80% ํ˜ธํ™˜ ๊ตฌํ˜„์ธ @root/request๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

80% ์ค€์ˆ˜๋Š” ๊ฑฐ์˜ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ˆ„๋ฝ๋œ 20%์— ์˜์กดํ•˜๋Š” ์ข…์†์„ฑ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: ์ŠคํŠธ๋ฆผ). ์ด๋ฅผ ์œ„ํ•ด์„œ๋Š” postman-request ์™€ ๊ฐ™์€ ์™„์ „ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ๋“œ๋กญ์ธ ๊ต์ฒด๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ด์ „ ๋Œ“๊ธ€(๊ฒ€์—ด/์‚ญ์ œ๋œ ๊ฒƒ์œผ๋กœ ๋ณด์ž„)์—์„œ ์œ ์ง€ ๊ด€๋ฆฌ์ž๊ฐ€ ํ”„๋กœ์ ํŠธ๋ฅผ Postman ํŒ€์— ๋„˜๊ฒผ์œผ๋ฏ€๋กœ request ์˜ ๊ตฌํ˜„์„ postman-request ๊ตฌํ˜„์œผ๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ œ์•ˆํ–ˆ์Šต๋‹ˆ๋‹ค request ์—์„œ ์ˆ˜์ •๋˜์ง€ ์•Š์€ ์ผ๋ถ€ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ ‡๊ฒŒ ํ•˜๋ฉด request ์˜ ์›๋ž˜ ์ €์ž๋Š” ๋ถˆํ•„์š”ํ•˜๊ฒŒ request ๋ฅผ ํ„ํ•˜ํ•˜์—ฌ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์„ ๊ฒ์ฃผ๊ฑฐ๋‚˜ ์งœ์ฆ๋‚˜๊ฒŒ ํ•˜์ง€ ์•Š๊ณ  ํ•œ๋ฐœ ๋ฌผ๋Ÿฌ์„œ์„œ ์ž˜ ๋ฒˆ "์€ํ‡ด"๋ฅผ ์ฆ๊ธธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ๋ฌด๋ฃŒ ์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ๊ด€๋ฆฌ์ž์—๊ฒŒ "๊ทธ๋ƒฅ ๊ทธ๋งŒ๋‘ฌ"๋ผ๊ณ  ๋งํ•  ๊ถŒ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋ฌผ๋ก  ๊ทธ๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋Š” "f * you"๋ผ๊ณ  ๋งํ•  ๊ถŒ๋ฆฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์š”์ฒญ์ด ํŒ๋งค ๊ธฐํ•œ์„ ์ดˆ๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค(์‚ฌ์šฉ ๊ธฐํ•œ์ด ์ง€๋‚œ ๊ฒƒ์€ ์•„๋‹˜). ๋ฌด๊ฒ๊ณ  ๊ณ ํ’์Šค๋Ÿฌ์›Œ์กŒ์Šต๋‹ˆ๋‹ค.

์—ฌ์ „ํžˆ ์‚ฌ์šฉ ์ค‘๋‹จํ•  ํƒ€๋‹นํ•œ ์ด์œ ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.

@mikeal ์€ ์š”์ฒญ์„ ๋Œ€์ฒดํ•˜๋Š” ์ตœ์†Œ ๋‘ ๊ฐœ์˜ ์ƒˆ ํŒจํ‚ค์ง€๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค ํ›จ์”ฌ ๊ฐ€๋ณ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ?

์ˆ˜์ฒœ ๊ฐœ์˜ ํŒจํ‚ค์ง€๊ฐ€ ์˜ค๋Š˜๋‚ ์—๋„ ์—ฌ์ „ํžˆ request ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ npm install ๋™์•ˆ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ผ์–ด๋‚˜์„œ๋Š” ์•ˆ ๋˜์—ˆ์œผ๋ฉฐ ์˜ˆ๋ฅผ ๋“ค์–ด ์‰ฝ๊ฒŒ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํšƒ๋ถˆ์„ ์šฐํŽธ ๋ฐฐ๋‹ฌ๋ถ€ ํŒ€์— ๋„˜๊ธฐ๊ฑฐ๋‚˜ ์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ํ‰ํ™”๋กญ๊ฒŒ ์ฃฝ๊ฒŒ ๋‚ด๋ฒ„๋ ค ๋‘๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ท€ํ•˜์™€ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ๊ณ„์† ์‚ฌ์šฉํ•˜๊ธฐ๋ฅผ ์›ํ•˜๋Š” ๊ฒฝ์šฐ ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€์› ์ค‘๋‹จ์˜ ์–ด๋–ค ๊ฒƒ๋„ ๊ทธ๋ ‡๊ฒŒ ํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉํ•ดํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋ฌผ๋ก  ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค.

npm install ๋™์•ˆ ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ๋ณด๊ณ  ๊ธด์žฅํ•˜๋Š” ๊ณ ๊ฐ์€ ์šฐ๋ฆฌ ์ค‘ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์ด ๋ฌธ์ œ๋ฅผ ๋ฐฉ์น˜ํ•˜๊ณ  ์•„๋ฌด ๊ฒƒ๋„ ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.

์ง€์› ์ค‘๋‹จ = ํด๋ฆญ ์œ ๋„๋ฌธ์•ˆ. ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ข…์†์„ฑ์ด ๋Š์–ด์งˆ ๋•Œ๊นŒ์ง€ ์ข…์†์„ฑ์„ ๊ต์ฒดํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์˜ˆ ๊ธฐ๊ฐ„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์œ ์˜ˆ ๊ธฐ๊ฐ„์ด ๋๋‚œ ํ›„ ์ข…์†์„ฑ์ด ๊ธฐ์กด ๊ธฐ๋Šฅ์„ ์ค‘๋‹จํ•  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ œ์™ธํ•˜๊ณ  ๋‹ค๋ฅธ ๊ฒฝ์šฐ์—๋Š” ์‚ฌ์šฉํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ ์ ์ฐจ์ ์œผ๋กœ ํŒจํ‚ค์ง€๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ๊ธฐํšŒ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด kraken-exchange๋Š” ๋ฒคํŠธ๋กœ ์ „ํ™˜ํ•˜์—ฌ 5.9MB์—์„œ 284KB๋กœ ์„ค์น˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์šฐ๋ฆฌ์˜ ์ข…์†์„ฑ ์ค‘ ์ผ๋ถ€๋ฅผ ํ•ด๋‹น ํŒจํ‚ค์ง€์˜ ๋‚ด๋ถ€ํ™”/๋งž์ถคํ˜• ๋กœ์ปฌ ๋ฒ„์ „์œผ๋กœ ๊ต์ฒดํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์œผ๋ฉฐ ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด request ๋ฅผ request-postman ๋กœ ๊ต์ฒดํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‚˜์ค‘์— request-postman ๋ฅผ ๋” ๊ฐ€๋ฒผ์šด ๋Œ€์•ˆ์œผ๋กœ ์ ์ง„์ ์œผ๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์‰ฌ์šด ์ˆ˜์ •์ฒ˜๋Ÿผ ๋ณด์˜€์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ ๋‹ค์Œ NPM์€ ์ž์ฒด์ ์œผ๋กœ ๋กœ์ปฌ ํŒจํ‚ค์ง€์— ์˜์กดํ•˜๋Š” ๋กœ์ปฌ ํŒจํ‚ค์ง€๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ๊ณผ ๊ด€๋ จํ•˜์—ฌ ์—„์ฒญ๋‚˜๊ฒŒ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์–ด์„œ ํ™˜๊ฒฝ์„ ํ›จ์”ฌ ๋œ ์•ˆ์ •์ ์œผ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์™„์ „ํžˆ ๋‹ค๋ฅธ ์›œ ์บ”์„ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋˜๋Œ๋ ค์•ผํ–ˆ๊ณ  request ๋กœ ๋‹ค์‹œ ์ด๋™ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์˜ ๊ฐ€์น˜๊ฐ€ ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์‹œ์ .

ํ˜„์žฌ๋กœ์„œ๋Š” request ๋ฅผ ์ข…์†์„ฑ์œผ๋กœ ํฌํ•จํ•˜๋Š” ์ข…์†์„ฑ์„ ๋„ˆ๋ฌด ๋งŽ์ด ์‚ฌ์šฉํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ๊ฑฐ์˜ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ์™€ ํ•จ๊ป˜ ์‚ฌ๋Š” ๊ฒƒ ์™ธ์— ๋‹ค๋ฅธ ๋Œ€์•ˆ์ด ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋ถˆํ–‰ํ•œ ์ผ์ด๋ฉฐ IMO๋Š” ์ ˆ๋Œ€ ์ผ์–ด๋‚˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค!

@csvan ์€ ๋‹น์‹ ์ด "๋งค์šฐ ์˜ค๋งŒํ•˜๋‹ค"๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ์‚ฌ์šฉํ–ˆ๋˜ ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋” ์ •์ค‘ํ•œ ํ‘œํ˜„์ด๋‹ค.

์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๊ฐ€ ์™œ ๊ทธ๋“ค๊ณผ ๊ทธ๋“ค์˜ ํ”„๋กœ์ ํŠธ์— ์ค‘์š”ํ•œ์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ๋‹ค๋Š” ์ด์œ ๋กœ "์˜ค๋งŒํ•˜๋‹ค"๊ฑฐ๋‚˜ ๋” ๋‚˜์œ ์‚ฌ๋žŒ์ด๋ผ๊ณ  ๋ถ€๋ฅผ ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ์€ ๋ˆ„๊ตฌ์ž…๋‹ˆ๊นŒ?!

๋‚ด๊ฐ€ ์˜ค๋งŒํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์€ ๋‹ค๋ฅธ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋ฅผ ์ฐพ๋Š” ๋Œ€์‹  ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๊ฐ€ ์˜์กดํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์ •๋‹นํ•œ ์ด์œ  ์—†์ด ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Postman ํŒ€์ด ์ด๋ฏธ request ์˜ ์™„์ „ํ•œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ํฌํฌ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ  ์ ๊ทน์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ๋‹ค๋Š” ์ ์„ ๊ณ ๋ คํ•˜๋ฉด ๊ทธ๋“ค์ด ๊ทธ๋ ‡๊ฒŒ ํ•˜๋„๋ก ์„ค๋“ํ•˜๋Š” ๊ฒƒ์ด ๋งค์šฐ ์–ด๋ ค์› ์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ์ƒํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

request ์ง€์› ์ค‘๋‹จ ๊ฒฐ์ •์— ๋”ฐ๋ฅธ ์ „ ์„ธ๊ณ„ ๋น„์šฉ์˜ ์˜ˆ์ƒ ๊ธˆ์•ก(๋ฐฑ๋งŒ ๋‹ฌ๋Ÿฌ)์€ ์–ผ๋งˆ์ž…๋‹ˆ๊นŒ?

์˜. ์˜ˆ์ „์ฒ˜๋Ÿผ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ๋‚˜์•„์ง€์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜. ์˜ˆ์ „์ฒ˜๋Ÿผ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋” ์ด์ƒ ๋‚˜์•„์ง€์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์—‰ํ„ฐ๋ฆฌ!

์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๊ฐ€ ์ด์— ์˜์กดํ•˜๋Š” ํ”„๋กœ์ ํŠธ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค๋ฉด ์‚ฌ์šฉ ์ค‘๋‹จ์ด ์ˆ˜๋ฐ˜ํ•˜๋Š” ๋‚ด์šฉ๊ณผ ํ•ด๋‹น ๋ฉ”์‹œ์ง€์˜ ์˜๋„๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ „ํ˜€ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค!

์‚ฌ์šฉ ์ค‘๋‹จ์€ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์„ ๋งค์šฐ ๋ถˆ์•ˆํ•˜๊ฒŒ ๋งŒ๋“ค๊ณ  ์ •๋‹นํ•œ ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด deprecation์ด ํ•ด์•ผ ํ•  ์ผ์ž…๋‹ˆ๋‹ค!

์•„, ๊ทธ๋Ÿผ ๋ฌธ์ œ ์—†์Šต๋‹ˆ๋‹ค. ๋ด‰ํˆฌ ๋’ท๋ฉด ๊ณ„์‚ฐ์€ ๋Œ€๋žต ๋ฏธํ™” 3์ฒœ๋งŒ ๋‹ฌ๋Ÿฌ์ด์ง€๋งŒ ์ œ๊ฐ€ ์ž˜๋ชป ์ƒ๊ฐํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์–ผ๋งˆ๋‚˜ ๋งŽ์€ ํŒจํ‚ค์ง€๊ฐ€ ์ด ํ”„๋กœ์ ํŠธ์— ์ง๊ฐ„์ ‘์ ์œผ๋กœ ์˜์กดํ•˜๋Š”์ง€๋ฅผ ๊ณ ๋ คํ•  ๋•Œ 3์ฒœ๋งŒ ๋‹ฌ๋Ÿฌ๋Š” ๋งค์šฐ ๋‚ฎ์€ ์ถ”์ •์น˜์ฒ˜๋Ÿผ ๋“ค๋ฆฝ๋‹ˆ๋‹ค!

๋‚˜๋Š” ์—ฌ๊ธฐ์—์„œ ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์ž์œ  ์†Œํ”„ํŠธ์›จ์–ด์— ๋Œ€ํ•œ ๊ถŒ๋ฆฌ ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š”์ง€ ๋†€๋ž๊ณ  ๋†€๋ž์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์—ฌ๊ธฐ์—์„œ ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์ž์œ  ์†Œํ”„ํŠธ์›จ์–ด์— ๋Œ€ํ•œ ๊ถŒ๋ฆฌ ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š”์ง€ ๋†€๋ž๊ณ  ๋†€๋ž์Šต๋‹ˆ๋‹ค.

์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์ž์‹ ์˜ ์ œํ’ˆ์ด ๋ฌด๋ฃŒ์ด๊ฑฐ๋‚˜ ์˜คํ”ˆ ์†Œ์Šค๋ผ๋Š” ์ด์œ ๋งŒ์œผ๋กœ ์ž์‹ ์˜ ํ–‰๋™์ด ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์— ๋Œ€ํ•ด ์•„๋ฌด๋Ÿฐ ์ฑ…์ž„์ด ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์— ๋†€๋ผ๊ณ  ๋†€๋ž์Šต๋‹ˆ๋‹ค.

IMO๋Š” ์•ฑ/๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๋“  ์ง€๋ถˆํ•˜์ง€ ์•Š๋“  ์‚ฌ์šฉ์ž/๊ณ ๊ฐ์„ ๋‹ค๋ฅด์ง€ ์•Š๊ฒŒ ๋Œ€ํ•˜๋Š” ๊ธฐ๋ณธ์ ์ธ ์กด์ค‘์˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

์ •๋ง, ์ •๋ง, ์ •๋ง ์ข‹์€ ์ด์œ ๊ฐ€ ์—†๋Š” ํ•œ ์‚ฌ๋žŒ๋“ค์ด ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๋Š” ๊ฒฝ์šฐ ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์ข…์†์„ฑ์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๊นŒ? ์‹œ๊ฐ)?

@jslegers ์ •ํ™•ํžˆ ๋‚ด ์š”์ . ๊ทธ๋ž˜์„œ ์ž๊ฒฉ์ด! ๋†€๋ผ์šด!

@jslegers ์ •ํ™•ํžˆ ๋‚ด ์š”์ . ๊ทธ๋ž˜์„œ ์ž๊ฒฉ์ด! ๋†€๋ผ์šด!

๋ƒ„๋น„...

์ฃผ์ „์ž...

๋‚˜๋Š” ์‚ฌ์šฉ์ž๋“ค์ด ์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ œ๊ณตํ•œ ๊ฒƒ์— ๋Œ€ํ•ด ์–ด๋–ค ์‹์œผ๋กœ๋“  ๋‹น์‹ ์—๊ฒŒ "๋นš์„ ์ง€๊ณ  ์žˆ๋‹ค"๊ณ , ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋“ค์ด ๋‹น์‹ ์—๊ฒŒ "์˜๊ด‘์„ ๋ฐ›๊ฑฐ๋‚˜" "๊ณ ๋ง™๋‹ค"๊ณ  ๋Š๊ปด์•ผ ํ•˜๋ฏ€๋กœ ๋ถˆํ‰ํ•  ๊ถŒ๋ฆฌ๊ฐ€ ์—†๋‹ค๊ณ  ์ฃผ์žฅํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋” ์ •๋‹นํ•œ ๊ฒƒ์€ ์—†๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‹น์‹ ์˜ ํ–‰๋™์ด ๊ทธ๋“ค์˜ ํ”„๋กœ์ ํŠธ์— ์ง์ ‘ ์˜ํ–ฅ์„ ๋ฏธ์น  ๋•Œ.

๋ฌผ๋ก , ์ˆ˜๋…„๊ฐ„ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ๋ฅผ ์œ ์ง€ํ•˜๋ ค๋ฉด ๋งŽ์€ ๋…ธ๋ ฅ๊ณผ ํ—Œ์‹ ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋ฌผ๋ก , ์‚ฌ๋žŒ๋“ค์ด ๊ธˆ์ „์  ๋ณด์ƒ ์—†์ด ์—ฌ๊ฐ€ ์‹œ๊ฐ„์— ๊ธฐ๊บผ์ด ๊ทธ๋ ‡๊ฒŒ ํ•  ๋•Œ ๊ฐํƒ„ํ•  ์ผ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋ชจ๋“  ๊ถŒ๋ฆฌ๋ฅผ ํ–‰์‚ฌํ•˜๊ณ  ์‚ฌ์šฉ์ž๋ฅผ ๊ฐ€์žฅ ํ•„์š”๋กœ ํ•  ๋•Œ ๋ƒ‰๋‹ดํ•œ ์ƒํƒœ๋กœ ๋‚ด๋ฒ„๋ ค ๋‘๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๋ณ€๋ช…์˜ ์—ฌ์ง€๊ฐ€ ์—†์œผ๋ฉฐ ๋ช‡ ๊ฐ€์ง€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•˜์ง€ ์•Š์€ ๋Œ€์•ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค!

@CliffS

๊ฐœ์ธ์ ์œผ๋กœ ์ ์ฐจ์ ์œผ๋กœ ํŒจํ‚ค์ง€๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ๊ธฐํšŒ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด kraken-exchange๋Š” ๋ฒคํŠธ๋กœ ์ „ํ™˜ํ•˜์—ฌ 5.9MB์—์„œ 284KB๋กœ ์„ค์น˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ ์‚ดํŽด๋ณด์•˜๊ณ  package.json์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์š”์ฒญ ๋ฒ„์ „ 2,88.0์„ ์ฐธ์กฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ ์‚ดํŽด๋ณด์•˜๊ณ  package.json์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์š”์ฒญ ๋ฒ„์ „ 2,88.0์„ ์ฐธ์กฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@JonathanRowell ๋„ค. ํ˜„์žฌ npm์œผ๋กœ ํ‘ธ์‹œํ•˜๊ธฐ ์ „์— ํ…Œ์ŠคํŠธ ์ค‘์ž…๋‹ˆ๋‹ค. ๋ฒ„์ „ v1.9.0์€ ํ•˜๋ฃจ๊ฐ€ ๋๋‚  ๋•Œ๊นŒ์ง€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋ชจ๋“  ๊ถŒ๋ฆฌ๋ฅผ ํ–‰์‚ฌํ•˜๊ณ  ์‚ฌ์šฉ์ž๋ฅผ ๊ฐ€์žฅ ํ•„์š”๋กœ ํ•  ๋•Œ ๋ƒ‰๋‹ดํ•œ ์ƒํƒœ๋กœ ๋‚ด๋ฒ„๋ ค ๋‘๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๋ณ€๋ช…์˜ ์—ฌ์ง€๊ฐ€ ์—†์œผ๋ฉฐ ๋ช‡ ๊ฐ€์ง€ ๋…ธ๋ ฅ์ด ํ•„์š”ํ•˜์ง€ ์•Š์€ ๋Œ€์•ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค!

๋ฐ”๋กœ ์ด๊ฒƒ์ด ๋ฐ”๋กœ @jslegers ์™€ ๊ฐ™์€ ์‚ฌ๋žŒ๋“ค์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด

์˜ค, ์ž ๊น.

๋ฐ”๋กœ ์ด๊ฒƒ์ด ๋ฐ”๋กœ @jslegers ์™€ ๊ฐ™์€ ์‚ฌ๋žŒ๋“ค์ด ๋ฌธ์ œ์— ๋Œ€ํ•ด

์ž˜๋ชป๋œ!

์ด๊ฒƒ์ด Postman ํŒ€์˜ ์นœ์ ˆํ•œ ์‚ฌ๋žŒ๋“ค์ด ์ด๋ฏธ postman-request ๋ผ๋Š” ์ž์ฒด request ํฌํฌ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค. ์ด ํฌํฌ๋Š” request ๋Œ€ํ•œ ์™„์ „ํ•œ ๋“œ๋กญ์ธ ๊ต์ฒด ์—ญํ• ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค request ๋ฐ ์ ๊ทน์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌ๋ฉ๋‹ˆ๋‹ค! request ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ƒ์‹์ ์ธ ๋Œ€์•ˆ์€ request ์œ ์ง€ ๊ด€๋ฆฌ๋ฅผ ์ธ์ˆ˜ํ•˜๋„๋ก ์š”์ฒญํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์–ด๋–ค ์ด์œ ๋กœ๋“  Postman ์‚ฌ๋žŒ๋“ค์ด ๊ฑฐ๋ถ€ํ•˜๋Š” ๊ฒฝ์šฐ request ๋Š” ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ์ˆ˜๋ฐฑ ๋ช…์ด ๋‚ญ๋น„๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ์—์„œ ์™„์ „ํ•œ ๋“œ๋กญ์ธ ๋Œ€์ฒด ๊ธฐ๋Šฅ์œผ๋กœ postman-request ๋ฅผ ๊ณต์‹์ ์œผ๋กœ ์ถ”์ฒœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ฒœ ๋ช…์˜ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋…๋ฆฝ์ ์œผ๋กœ ๊ทธ๋Ÿฌํ•œ ์ž„์‹œ ๊ต์ฒด๋ฅผ ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜๋Š” request ์˜ ์œ ์ง€ ๊ด€๋ฆฌ/์ง€์› ์ค‘๋‹จ์„ ๊ณต์‹์ ์œผ๋กœ ๋ฐœํ‘œํ•˜๊ณ  ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ  ์—†์ด ์ฒœ์ฒœํžˆ ํ‰ํ™”๋กญ๊ฒŒ ์ข…๋ฃŒ๋˜๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€๊นŒ์šด ์žฅ๋ž˜์— ๊นจ์งˆ ์˜ˆ์ •์ด ์•„๋‹™๋‹ˆ๋‹ค.

์ด 3๊ฐ€์ง€ ์ ‘๊ทผ ๋ฐฉ์‹ ์ค‘ ํ•˜๋‚˜๋Š” ํ˜„์žฌ ์ ‘๊ทผ ๋ฐฉ์‹๋ณด๋‹ค ํ›จ์”ฌ ๋” ์šฐ์ˆ˜ํ•˜๋ฉฐ ๋‹น์‚ฌ์ž์˜ ์ถ”๊ฐ€ ๋ฆฌ์†Œ์Šค๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์–ด๋Š ํ•œ์ชฝ์ด ๊ทธ๋“ค์˜ ๊ธฐ๋Œ€์— ๋ถ€ํ•ฉํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ๋…ผํ•˜๋Š” ๊ฒƒ์€ ๊ฑด์„ค์ ์ด์ง€ ์•Š์œผ๋ฉฐ ๋‹น๋ฉดํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜์ง€๋„ ์•Š์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ ๋ชจ๋‘๋Š” ์ž์‹ ์˜ ๋ฌธ์ œ๊ฐ€ ๋” ์‰ฝ๊ฒŒ ์ฒ˜๋ฆฌ๋  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ผ๋Š” ๋งˆ์Œ์œผ๋กœ ๋ฐ›์•„๋“ค์ด๊ณ  ์ฃผ๊ณ , ํ˜‘๋ ฅํ•˜์ง€๋งŒ, ์•„๋ฌด๋„ ์ƒ๋Œ€๋ฐฉ์—๊ฒŒ ์ž์‹ ์˜ ์˜์ง€์— ๋ฐ˜ํ•˜๋Š” ํ–‰๋™์„ ๊ฐ•์š”ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค.

์‚ฌ์‹ค์€) ํ˜„์žฌ ์†Œ์œ ์ž๊ฐ€ ๋” ์ด์ƒ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์‹ถ์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ(์™„๋ฒฝํžˆ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Œ)์ด์ง€๋งŒ b) ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋กœ ์ธํ•ด ๋งŽ์€ ๊ณ ํ†ต์„ ๋Š๋ผ๊ณ  ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์ฆ‰์‹œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค(์™„๋ฒฝํ•˜๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์Œ).

๋”ฐ๋ผ์„œ ํ•ฉ๋ฆฌ์ ์ธ ํƒ€ํ˜‘์€ @jslegers๊ฐ€ ์ œ์•ˆํ•œ ๊ฒƒ๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ํ”„๋กœ์ ํŠธ ์†Œ์œ ๊ถŒ์„ ๊ด€์‹ฌ ์žˆ๊ณ  ๊ธฐ๊บผ์ด ๊ฐ€์ ธ๊ฐˆ ์˜์‚ฌ๊ฐ€ ์žˆ๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ์–‘๋„ํ•˜๊ณ , ์ง€๊ธˆ์€ ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ , ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ์‚ฌ์šฉ ์ค‘๋‹จ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์›€์ง์ž„์˜ ์˜ํ–ฅ์„ ๋ฐ›๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋” ๋ถ€๋“œ๋Ÿฝ๊ฒŒ.

@mikeal๋‹˜ , ํ”„๋กœ์ ํŠธ ์†Œ์œ ๊ถŒ์„ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ ์–‘๋„ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ์‚ฌ๋žŒ๋“ค์ด ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›์œผ๋ฉด์„œ ๊ฒช๊ณ  ์žˆ๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด Mikeal์—์„œ ๊ทธ๊ฒƒ์„ ๊ธฐ๊บผ์ด ๊ฐ€์ ธ๊ฐˆ ์˜ํ–ฅ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

ํ”„๋กœ์ ํŠธ ์†Œ์œ ๊ถŒ ์ด์ „์„ ์œ„ํ•œ ํ˜‘๋ ฅ ์™ธ์— ์šฐ๋ฆฌ ์ค‘ ๋ˆ„๊ตฌ๋„ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ด๊ฒƒ์ €๊ฒƒ ํ•˜๋ผ๊ณ  ๋งํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ž๊ธฐ ์ž์‹ ์„ ์œ„ํ•ด์„œ๋งŒ ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ์Šค๋ ˆ๋“œ์—์„œ ๋งŽ์ด ์–ธ๊ธ‰๋˜์ง€ ์•Š์€ ๋˜ ๋‹ค๋ฅธ ์‚ฌ์‹ค์€ ์ด ์ธ๊ธฐ ์žˆ๋Š” ํŒจํ‚ค์ง€์˜ ์†Œ์œ ๊ถŒ ์ด์ „์ด ๋ณด์•ˆ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์†Œ์œ ๊ถŒ ์ด์ „์ด ๋‚˜์œ ํ–‰์œ„์ž์—๊ฒŒ ์ด๋ฃจ์–ด์กŒ๊ณ  ํŒจํ‚ค์ง€์˜ ์ƒˆ ๋ฒ„์ „์—์„œ ์•…์˜์ ์ธ ํ™œ๋™์„ ์ดˆ๋ž˜ํ•œ ์ตœ๊ทผ ์‚ฌ๊ฑด์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์™€ ๊ฐ™์ด ์ธ๊ธฐ ์žˆ๋Š” ํŒจํ‚ค์ง€๋Š” ๊ทธ๋Ÿฐ ์œ ํ˜•์˜ ์•กํ„ฐ์—๊ฒŒ ํ›Œ๋ฅญํ•œ ํƒ€๊ฒŸ์ž…๋‹ˆ๋‹ค.

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

์ด ์Šค๋ ˆ๋“œ์—์„œ ๋งŽ์ด ์–ธ๊ธ‰๋˜์ง€ ์•Š์€ ๋˜ ๋‹ค๋ฅธ ์‚ฌ์‹ค์€ ์ด ์ธ๊ธฐ ์žˆ๋Š” ํŒจํ‚ค์ง€์˜ ์†Œ์œ ๊ถŒ ์ด์ „์ด ๋ณด์•ˆ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์†Œ์œ ๊ถŒ ์ด์ „์ด ๋‚˜์œ ํ–‰์œ„์ž์—๊ฒŒ ์ด๋ฃจ์–ด์กŒ๊ณ  ํŒจํ‚ค์ง€์˜ ์ƒˆ ๋ฒ„์ „์—์„œ ์•…์˜์ ์ธ ํ™œ๋™์„ ์ดˆ๋ž˜ํ•œ ์ตœ๊ทผ ์‚ฌ๊ฑด์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์™€ ๊ฐ™์ด ์ธ๊ธฐ ์žˆ๋Š” ํŒจํ‚ค์ง€๋Š” ๊ทธ๋Ÿฐ ์œ ํ˜•์˜ ์•กํ„ฐ์—๊ฒŒ ํ›Œ๋ฅญํ•œ ํƒ€๊ฒŸ์ž…๋‹ˆ๋‹ค.

๋ฌผ๋ก  ์†Œ์œ ๊ถŒ์„ ์•„๋ฌด์—๊ฒŒ๋‚˜ ์–‘๋„ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ Postman ํŒ€์€ ๋…ผ๋ฆฌ์ ์ธ ์„ ํƒ์ฒ˜๋Ÿผ ๋“ค๋ฆฝ๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด...

  • ๊ทธ๋“ค์€ ๋ณดํ˜ธํ•ด์•ผ ํ•˜๋Š” ํ‰ํŒ์ด ์žˆ์œผ๋ฏ€๋กœ ํ”„๋กœ์ ํŠธ์— ์•…์„ฑ ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•˜์—ฌ request ํ”„๋กœ์ ํŠธ์— ํ”ผํ•ด๋ฅผ ์ค„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • API ๊ฐœ๋ฐœ ๋ฐ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ํ”Œ๋žซํผ์œผ๋กœ์„œ ๋งŽ์€ ์ž ์žฌ ๊ณ ๊ฐ์ด ์‚ฌ์šฉํ•˜๋Š” ๋งค์šฐ ์ธ๊ธฐ ์žˆ๋Š” NPM ํŒจํ‚ค์ง€์˜ ๊ณต์‹ ์œ ์ง€ ๊ด€๋ฆฌ์ž๊ฐ€ ๋˜๋Š” ๊ฒƒ์€ ๋งˆ์ผ€ํŒ…์˜ ์Šน๋ฆฌ๊ฐ€ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ทธ๋“ค์€ ์ด๋ฏธ request ์˜ ์ž์ฒด ํฌํฌ๋ฅผ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋ฏ€๋กœ ์ถ”๊ฐ€ ๋ฆฌ์†Œ์Šค๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ํฌํฌ๋ฅผ request ๋กœ ๋ณ‘ํ•ฉํ•˜๊ณ  ๋ฆฌ์†Œ์Šค๋ฅผ ์ž์ฒด ํฌํฌ(๋” ์ด์ƒ ํ•„์š”ํ•˜์ง€ ์•Š์Œ)์—์„œ ๊ณต์‹ request ์ €์žฅ์†Œ๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌผ๋ก  ๊ทธ๋“ค์ด ๋ฐ›์•„๋“ค์ผ ๊ฒƒ์ด๋ผ๋Š” ๋ณด์žฅ์€ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋“ค์—๊ฒŒ ์ƒ์‹์ด ์žˆ๋‹ค๋ฉด ์ฆ‰์‹œ ๋›ฐ์–ด๋“ค ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ request ์œ ์ง€ ๊ด€๋ฆฌ์ž๊ฐ€ ์ด๋ฏธ ๊ทธ๋“ค์—๊ฒŒ ์—ฐ๋ฝ์„ ์‹œ๋„ํ–ˆ๊ณ  ์‹ค์ œ๋กœ ์ด ์ œ์•ˆ์„ ๊ฑฐ๋ถ€ํ–ˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์—†๋‹ค๋ฉด ์ด๊ฒƒ์€ ํ™•์‹คํžˆ IMO๋ฅผ ํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค!

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

์ด๊ฑด ๋„ˆ๋ฌด ๋’ท๋ถ์ด๋ผ ์–ด๋””์„œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์•ผ ํ• ์ง€ ๋ชจ๋ฅด๊ฒ ์–ด. ํŒจํ‚ค์ง€๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.
์†Œ์œ ์ž๋Š” ๊ณ„์† ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ์‚ฌ์šฉํ•˜์—ฌ ๊ธฐ์ˆ  ๋ถ€์ฑ„๋ฅผ ์Œ“๊ณ  ์žˆ์Œ์„ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. npm์„ ํ†ตํ•œ ๊ณต์‹ ์ง€์› ์ค‘๋‹จ์˜ ๊ฐ€์žฅ ์ข‹์€ ์ ์€ ์‚ฌ๋žŒ๋“ค์ด ์ด์— ๋Œ€ํ•œ ๋ช…ํ™•ํ•œ ํ‘œ์‹œ๋ฅผ ๋ฐ›๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ช‡ ๋…„ ํ›„("์ฒœ์ฒœํžˆ ์ฃฝ๋Š”" ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ) ์ด๋ฏธ ๋„ˆ๋ฌด ๋Šฆ์—ˆ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์›ํ™œํ•œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ๊ณ ๋ คํ•˜์‹ญ์‹œ์˜ค.

๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ์ดํ›„์— ๋ฒ„๋ ค์ง„ ํŒจํ‚ค์ง€๋Š” ํ‰ํ™”๋กญ๊ฒŒ ์ฃฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์œ ์ง€๋˜์ง€ ์•Š์€ ์ƒํƒœ๋กœ ์ธํ•ด ์‹ค์ œ๋กœ ๋ฌผ๊ฑด์ด ํŒŒ์†๋˜๊ณ  ๋ณด์•ˆ ๊ตฌ๋ฉ์ด ์—ด๋ฆฐ ํ›„ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ๊ณตํ™ฉ ์ƒํƒœ์—์„œ ๋ฉ€์–ด์ง€๊ธฐ ์‹œ์ž‘ํ•˜๋ฉด ์‚ฌ๋งํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์‹ค, ๋‹น์‹ ์ด๋‚˜ ๋‚˜ ๋ชจ๋‘ ์ง€์› ์ค‘๋‹จ ํ†ต์ง€ ์—†์ด ์š”์ฒญ ์ƒํƒœ๋ฅผ ์•Œ์ง€ ๋ชปํ–ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋Œ€๋‹ค์ˆ˜์˜ ์‚ฌ์šฉ์ž๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋ฆฌ๋ˆ…์Šค์—์„œ ๊ฐ๋„๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•œ ๋‹ค์Œ Windows์—์„œ ๋‘˜ ๋‹ค ํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค์—์„œ npm install -g @ angular / cli @ latest ๋ช…๋ น์„ ์‹คํ–‰ํ•œ ํ›„ ์ด ์˜ค๋ฅ˜๊ฐ€ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

C:\Users\Hanzell>npm install -g @angular/cli@latest
npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. #3142 ์ฐธ์กฐ
C:\Users\Hanzell\AppData\Roamingnpm\ng -> C:\Users\Hanzell\AppData\ Roamingnpmnode_modules@angular\cli\bin\ng

@angular/ cli @ Roamingnpmnode_modules@angular\cli
๋…ธ๋“œ ./bin/postinstall/script.js

  • @angular/ cli @
    188.027์ดˆ ๋™์•ˆ 205๋ช…์˜ ๊ธฐ์—ฌ์ž๊ฐ€ 260๊ฐœ์˜ ํŒจํ‚ค์ง€๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ ๋‹ค์Œ ์ €์žฅ์†Œ๋ฅผ ๋งŒ๋“ค์—ˆ๊ณ  ์ด๊ฒƒ์ด ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

C:\Users\Hanzell\Desktop>ng ์ƒˆ
? ์ƒˆ ์ž‘์—… ๊ณต๊ฐ„๊ณผ ์ดˆ๊ธฐ ํ”„๋กœ์ ํŠธ์— ์–ด๋–ค ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ํ—
? Angular ๋ผ์šฐํŒ…์„ ์ถ”๊ฐ€ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ์•„๋‹ˆ์š”
? ์–ด๋–ค ์Šคํƒ€์ผ์‹œํŠธ ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? CSS
CREATE hola/angular.json(3551๋ฐ”์ดํŠธ)
CREATE hola/package.json(1281๋ฐ”์ดํŠธ)
CREATE hola/README.md(1021๋ฐ”์ดํŠธ)
hola/tsconfig.json ์ƒ์„ฑ(543๋ฐ”์ดํŠธ)
CREATE hola/tslint.json(1953๋ฐ”์ดํŠธ)
CREATE hola/.editorconfig(246๋ฐ”์ดํŠธ)
CREATE hola/.gitignore(631๋ฐ”์ดํŠธ)
CREATE hola/browserslist(429๋ฐ”์ดํŠธ)
CREATE hola/karma.conf.js(1016๋ฐ”์ดํŠธ)

  • ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘...npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142g.spec.json(270 ๋ฐ”์ดํŠธ) ์ฐธ์กฐ
    npm ์˜ค๋ฅ˜! '...f8x\n2SbOSCsT+zdXwIaf' ๊ทผ์ฒ˜์—์„œ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋™์•ˆ JSON ์ž…๋ ฅ์ด ์˜ˆ๊ธฐ์น˜ ์•Š๊ฒŒ ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\Hanzell\AppData\Roamingnpm-cache_logs\2020-03-01T05_15_55_441Z-debug.log
ร— ํŒจํ‚ค์ง€ ์„ค์น˜์— ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
๋„์‹ ์›Œํฌํ”Œ๋กœ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
CREATE hola/src/assets/.gitkeep(0๋ฐ”์ดํŠธ

๋•๋‹ค!

npm ์—…๋ฐ์ดํŠธ๋ฅผ ํ™•์ธํ•˜๊ณ  ๋‚˜์ค‘์— npm์„ ๊ฐ๋„ ํ”„๋กœ์ ํŠธ์— ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค.

์ด๊ฑด ๋„ˆ๋ฌด ๋’ท๋ถ์ด๋ผ ์–ด๋””์„œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์•ผ ํ• ์ง€ ๋ชจ๋ฅด๊ฒ ์–ด. ํŒจํ‚ค์ง€๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š๊ณ  ์œ ์˜ˆ ๊ธฐ๊ฐ„์ด ๋๋‚˜๊ธฐ ์ „์— ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ์˜ฎ๊ฒจ์•ผ ํ•œ๋‹ค๋Š” ์ ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํŠน์ • ์‹œ์  ์ด์ „์— ์ด์‚ฌํ•  ํ•„์š”๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ์‚ฌ์šฉ ์ค‘๋‹จํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค... ์ตœ์†Œํ•œ ์ž„์‹œ ๊ต์ฒด๋ฅผ ์ œ์•ˆํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ(์˜ˆ postman-request ์ด ๊ฒฝ์šฐ

๊ทธ ์ฐจ์ด๋Š” ๋ฏธ๋ฌ˜ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ๊ฒฐ๊ณผ๋Š” ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ์ง€์› ์ค‘๋‹จ์„ ํ†ตํ•ด ์ •๋‹นํ•œ ์ด์œ  ์—†์ด ์ˆ˜์ฒœ ๊ฐœ ํšŒ์‚ฌ์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ๋‚ญ๋น„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ์ง€ ๊ด€๋ฆฌ๋ฅผ ์ข…๋ฃŒํ•˜๊ณ  ๊ทธ๋Œ€๋กœ ๋‘๋ฉด ํ”ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!

์ด ์Šค๋ ˆ๋“œ์—์„œ ๋งŽ์ด ์–ธ๊ธ‰๋˜์ง€ ์•Š์€ ๋˜ ๋‹ค๋ฅธ ์‚ฌ์‹ค์€ ์ด ์ธ๊ธฐ ์žˆ๋Š” ํŒจํ‚ค์ง€์˜ ์†Œ์œ ๊ถŒ ์ด์ „์ด ๋ณด์•ˆ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์†Œ์œ ๊ถŒ ์ด์ „์ด ๋‚˜์œ ํ–‰์œ„์ž์—๊ฒŒ ์ด๋ฃจ์–ด์กŒ๊ณ  ํŒจํ‚ค์ง€์˜ ์ƒˆ ๋ฒ„์ „์—์„œ ์•…์˜์ ์ธ ํ™œ๋™์„ ์ดˆ๋ž˜ํ•œ ์ตœ๊ทผ ์‚ฌ๊ฑด์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์™€ ๊ฐ™์ด ์ธ๊ธฐ ์žˆ๋Š” ํŒจํ‚ค์ง€๋Š” ๊ทธ๋Ÿฐ ์œ ํ˜•์˜ ์•กํ„ฐ์—๊ฒŒ ํ›Œ๋ฅญํ•œ ํƒ€๊ฒŸ์ž…๋‹ˆ๋‹ค.

... ์ด ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ํฌํฌ๊ฐ€ ์ด ํŒจํ‚ค์ง€๋ฅผ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๊ณ„์† ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿด ์ˆ˜ ์žˆ์ง€; Postman ์ง์›์˜ ์†Œ์‹์„ ๋“ฃ๊ณ  ๊ทธ๋“ค์—๊ฒŒ ์ด์ „ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•œ์ง€ ํ‰๊ฐ€ํ•˜๋ ค๋ฉด ์กฐ๊ธˆ ๊ธฐ๋‹ค๋ ค์•ผ ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ํฌํฌ๊ฐ€ ์•ž์œผ๋กœ ๋‚˜์•„๊ฐˆ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

์•„๋‹ˆ์š”, ๋‹น์‹ ์€ ๊ทธ๋“ค์˜ ์˜์กด์„ฑ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์ด์ œ ํฌ๊ธฐ๋˜์—ˆ๊ณ  ๊ฑฐ์˜ ํ™•์‹คํ•˜๊ฒŒ ๊ธฐ์ˆ  ๋ถ€์ฑ„์˜ ์›์ฒœ์ž„์„ ๋ถ„๋ช…ํžˆ ํ•จ์œผ๋กœ์จ ์‹œ๊ฐ„์„ ๋‚ญ๋น„ํ•˜๊ณ  ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ ๋ฐ˜๋Œ€๊ฐ€ ์‚ฌ์‹ค์ด๋ฉฐ ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ „์ฒด ํ† ๋ก ์ด ๊ทธ ์ฆ๊ฑฐ์ž…๋‹ˆ๋‹ค. ์ง€์› ์ค‘๋‹จ ์—†์ด๋Š” ์กฐ๋งŒ๊ฐ„ ์ผ์–ด๋‚˜์ง€ ์•Š์•˜์„ ํ† ๋ก ์ž…๋‹ˆ๋‹ค.

์•„๋‹ˆ์š”, ๋‹น์‹ ์€ ๊ทธ๋“ค์˜ ์˜์กด์„ฑ ์ค‘ ํ•˜๋‚˜๊ฐ€ ์ด์ œ ํฌ๊ธฐ๋˜์—ˆ๊ณ  ๊ฑฐ์˜ ํ™•์‹คํ•˜๊ฒŒ ๊ธฐ์ˆ  ๋ถ€์ฑ„์˜ ์›์ฒœ์ž„์„ ๋ถ„๋ช…ํžˆ ํ•จ์œผ๋กœ์จ ์‹œ๊ฐ„์„ ๋‚ญ๋น„ํ•˜๊ณ  ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ๊ฐ€ ์ค‘๋‹จ๋˜์—ˆ๋‹ค๊ณ  ํ•ด์„œ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋กœ ๋Œ€์ฒด๋˜์–ด์•ผ ํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

ํŠนํžˆ request ๋ฅผ ๋ชจ๋‘ ์ข…์†์„ฑ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์—ฌ๋Ÿฌ ์ข…์†์„ฑ์„ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ์˜ ๊ฒฝ์šฐ request ๋ฅผ ๋‹ค๋ฅธ ๊ฒƒ์œผ๋กœ ๋ฐ”๊พธ๋ ค๋Š” ์ž ์žฌ์ ์ธ ์ด๋“์€ ์ด๋ฅผ ๋‹ฌ์„ฑํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋…ธ๋ ฅ์— ๊ทผ์ ‘ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. !

์ง€์› ์ค‘๋‹จ ์—†์ด๋Š” ์กฐ๋งŒ๊ฐ„ ๋ฐœ์ƒํ•˜์ง€ ์•Š์•˜์„ ํ† ๋ก ์ž…๋‹ˆ๋‹ค.

์ด ๋…ผ์˜๋Š” ์ง€์› ์ค‘๋‹จ์ด ์—†์—ˆ๋‹ค๋ฉด ํ•„์š”ํ•˜์ง€ ์•Š์•˜์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์˜ˆ, ๋น„์ถ”์ฒœ ์—ฌ๋ถ€์— ๊ด€๊ณ„์—†์ด ์–ด๋Š ์‹œ์ ์— ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ ์‹œ์ ์€ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์€ ํŒจํ‚ค์ง€์˜ ์˜ํ–ฅ์ด ๋Š๊ปด์ง€๊ธฐ ์‹œ์ž‘ํ•  ๋•Œ๋ณด๋‹ค ํ›จ์”ฌ ๋” ์ผ์ฐ ๋„๋‹ฌํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์–ด์จŒ๋“ , ๋‚˜๋Š” ์ด๊ฒƒ์„ ํฌ๊ธฐํ•œ๋‹ค. ์ฆ๊ฑฐ์šด ์‹œ๊ฐ„ ๋ณด๋‚ด์„ธ์š”.

"๋ชจ๋“  ๊ฒƒ์€ ๋ณ€ํ•  ์ˆ˜ ์žˆ๊ณ  ๋ชจ๋“  ๊ฒƒ์ด ๋‚˜ํƒ€๋‚ฌ๋‹ค๊ฐ€ ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ์‚ถ๊ณผ ์ฃฝ์Œ์˜ ๊ณ ๋‡Œ๋ฅผ ๋„˜์–ด์„ค ๋•Œ๊นŒ์ง€ ํ–‰๋ณตํ•œ ํ‰ํ™”๋Š” ์—†๋‹ค.โ€

โ€” ๊ณ ํƒ€๋งˆ ๋ถ€์ฒ˜

@mikeal ๋‹น์‹ ์€

์ž์„ธํ•œ ๋‚ด์šฉ๊ณผ ์ถ”๋ก ์— ๋“ค์–ด๊ฐ€๊ธฐ ์ „์— ์š”์ ์œผ๋กœ ๋ฐ”๋กœ ๊ฐ€๊ฒ ์Šต๋‹ˆ๋‹ค. request ์ด JavaScript ์ƒํƒœ๊ณ„๋ฅผ ์œ„ํ•ด ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์žฅ ๊ฐ€์น˜ ์žˆ๋Š” ์ผ์€ ์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ๋กœ ์ „ํ™˜ํ•˜๊ณ  ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ด๋‚˜ ์ฃผ์š” ๋ฆด๋ฆฌ์Šค์— ๋Œ€ํ•œ ๊ณ ๋ ค๋ฅผ ์ค‘๋‹จํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐœ์„ ์„ ์œ„ํ•ด ์ตœ์„ ์„ ๋‹คํ•˜๊ณ  ์žˆ๋Š” request ์˜ ๋‹ค๋ฅธ ์ปค๋ฏธํ„ฐ๋“ค์—๊ฒŒ ๋ฏธ๋ฆฌ ์‚ฌ๊ณผ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ๊ฒŒ ์ตœ์„ ์ž…๋‹ˆ๋‹ค.

2009๋…„

request ์˜ ์ฒซ ๋ฒˆ์งธ ๋ฒ„์ „์€ Node.js ์ƒํƒœ๊ณ„๋ฅผ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ์ตœ์ดˆ์˜ ๋ชจ๋“ˆ ์ค‘ ํ•˜๋‚˜์˜€์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ดˆ๊ธฐ ๋ฒ„์ „์€ ํ‘œ์ค€ ์ฝœ๋ฐฑ ์ธํ„ฐํŽ˜์ด์Šค, ์ŠคํŠธ๋ฆผ, node_modules ๋ฐ npm๋ณด๋‹ค ์•ž์„  API์— ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ ๋ช‡ ๋…„ ๋™์•ˆ request ์™€ Node.js๋Š” ํ•จ๊ป˜ ๋ฐœ์ „ํ–ˆ๊ณ  ์„œ๋กœ์—๊ฒŒ์„œ ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค. Node.js๊ฐ€ ์ฝ”์–ด ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ฐœ์„ ํ•˜๊ณ  ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•จ์— ๋”ฐ๋ผ ์š”์ฒญ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์˜€์Šต๋‹ˆ๋‹ค. ์š”์ฒญ์ด ํ•ต์‹ฌ http ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ฑ„ํƒํ•˜๊ณ  ์ŠคํŠธ๋ฆผ์„ ์ŠคํŠธ๋ฆฌ๋ฐํ•จ์— ๋”ฐ๋ผ pipe ์ด๋ฒคํŠธ( request ์˜ ํ•œ ์ค„ ํ”„๋ก์‹œ ํ™œ์„ฑํ™”) ๋ฐ Core http์˜ ๋งŽ์€ ์žฌ์ž‘์„ฑ ์ค‘ ํ•˜๋‚˜( ํ•˜๋‚˜๋Š” ๋‚ด๊ฐ€ ์จ์•ผํ–ˆ์Šต๋‹ˆ๋‹ค).

npm

request ๋Š” npm ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ์ถ”๊ฐ€๋œ ์ฒซ ๋ฒˆ์งธ ๋ชจ๋“ˆ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. npm์ด ์„ฑ์žฅํ•จ์— ๋”ฐ๋ผ request ์— ๋Œ€ํ•œ ์˜์กด๋„๋„ ๋†’์•„์กŒ์Šต๋‹ˆ๋‹ค. npm ๊ฐ€ ๋ฐฑ์—”๋“œ ์ž‘์—…๋ณด๋‹ค ํ”„๋ก ํŠธ์—”๋“œ ์ž‘์—…์— ํ›จ์”ฌ ๋” ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ์ง€๊ธˆ๋„ request ๋Š” ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์˜์กดํ•˜๋Š” ๋ชจ๋“ˆ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ด ๊ธ€์„ ์“ฐ๋Š” ๋™์•ˆ 41K ๋ชจ๋“ˆ์€ ์š”์ฒญ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง€๋ฉฐ ์ผ์ฃผ์ผ์— 1400๋งŒ ๋ฒˆ ๋‹ค์šด๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.

request ์ด Node.js ์ƒํƒœ๊ณ„์—์„œ ์ฐจ์ง€ํ•˜๋Š” ์œ„์น˜๋Š” ๋” ์ด์ƒ ํ˜์‹ ๊ฐ€๊ฐ€ ์•„๋‹ˆ๋ผ ๊ธฐ์กด ๊ธฐ์—…์ž…๋‹ˆ๋‹ค. Node.js์—์„œ HTTP๋กœ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด Google์—์„œ ๊ฒ€์ƒ‰ํ•˜๋ฉด ์˜ˆ์ œ์—์„œ request ๋ฅผ ํด๋ผ์ด์–ธํŠธ๋กœ, express ๋ฅผ ์„œ๋ฒ„๋กœ ํ‘œ์‹œํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋‘ ๊ฐ€์ง€ ํŠนํžˆ ๋‚˜์œ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค.

์ƒํƒœ๊ณ„ ์ „๋ฐ˜์— ๊ฑธ์ณ request ๋ณด์œ ํ•˜๊ณ  ์žˆ๋Š” ํ˜„์žฌ ์œ„์น˜ ๋•Œ๋ฌธ์— ์œ ์‚ฌํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ƒˆ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ฑ„ํƒ์„ ์–ป๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ๋” ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ๋Œ€๋ถ€๋ถ„์˜ ์ข…์† ํ•ญ๋ชฉ์— ์˜ํ•ด ์ฑ„ํƒ๋˜์ง€ ์•Š์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ request ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ˆ˜์ฒœ ๊ฐœ์˜ ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ ๋ฐ ์Šคํƒ ์˜ค๋ฒ„ํ”Œ๋กœ ์‘๋‹ต๊ณผ ์ผ์น˜ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์˜๋ฏธ ์žˆ๋Š” ๋ฐฉ์‹์œผ๋กœ ์š”์ฒญ์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค.

์ตœ์‹  ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ

์ง€๋‚œ ๋ช‡ ๋…„์€ JavaScript์—์„œ ๊ทน์ ์ธ ์‹œ๊ฐ„์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์ด ์ˆ˜๋…„ ๋™์•ˆ ์ด์•ผ๊ธฐํ–ˆ๋˜ ๊ธฐ๋Šฅ์€ ์•„์ด๋””์–ด์—์„œ ํ‘œ์ค€์œผ๋กœ, ๋Œ€๋ถ€๋ถ„์˜ ํ™˜๊ฒฝ์—์„œ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์œผ๋กœ ๋ฐ”๋€Œ์—ˆ์Šต๋‹ˆ๋‹ค. ์ž๋™ ์—…๋ฐ์ดํŠธ ๋ธŒ๋ผ์šฐ์ €์™€ ๊ณต๊ฒฉ์ ์ธ Node.js ๋ฆด๋ฆฌ์Šค ์ผ์ • ๋•๋ถ„์— ์ด๊ฒƒ์ด ์ฑ„ํƒ๋˜๋Š” ์†๋„๋Š” ์—„์ฒญ๋‚ฉ๋‹ˆ๋‹ค.

request ์˜ ํ•ต์‹ฌ ํŒจํ„ด์ด ๊ตฌ์‹์ž…๋‹ˆ๋‹ค. ๋ช‡๋ช‡ ์‚ฌ๋žŒ๋“ค์€ ๊ทธ ํ‰๊ฐ€์— ๋Œ€ํ•ด ์ด์˜๋ฅผ ์ œ๊ธฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋‚˜๋Š” ๊ทธ๋“ค์ด ๋ˆ„๊ตฌ์ธ์ง€ ์•Œ๊ณ  ์žˆ์œผ๋ฏ€๋กœ ๋†€๋ผ์ง€ ์•Š๊ฒ ์ง€๋งŒ ์‚ฌ์‹ค์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ข…์ข… ์ด๋Ÿฌํ•œ ๊ธฐ๋Šฅ ์ค‘ ์ผ๋ถ€๊ฐ€ Node.js์˜ ์ตœ์‹  ๋ฆด๋ฆฌ์Šค์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ ์ง€ ์–ผ๋งˆ ๋˜์ง€ ์•Š์•„ ์ „์ฒด ๊ธฐ๋Šฅ์„ ์ฑ„ํƒํ•ด์•ผ ํ•˜๋Š” ์˜ํ–ฅ์— ๋Œ€ํ•ด ํšŒ์˜์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ์ƒํƒœ๊ณ„์—์„œ ์ด๋Ÿฌํ•œ ํŒจํ„ด์œผ๋กœ์˜ ์ „ํ™˜์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์ด ์–ผ๋งˆ๋‚˜ ์ง€์ €๋ถ„ํ• ์ง€๋Š” ์—ฌ์ „ํžˆ ๊ณต์ค‘์— ๋–  ์žˆ๊ณ  ๋‚˜๋Š” ์ฐป์žŽ์„ ์ฝ๊ณ  ๊ทธ๋Ÿฐ ์ ์—์„œ ๋ฏธ๋ž˜๊ฐ€ ์–ด๋–ค ๋ชจ์Šต์ผ์ง€ ์•Œ์•„๋‚ด๋ ค๊ณ  ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. request ๋Œ€ํ•œ ์งˆ๋ฌธ์€ "์šฐ๋ฆฌ๋Š” ๊ทธ ์ „ํ™˜์„ ํ†ตํ•ด ์ƒ์กดํ•˜๋ ค๊ณ  ๋…ธ๋ ฅํ•ฉ๋‹ˆ๊นŒ?"์ž…๋‹ˆ๋‹ค. 1๋…„ ์ „์—๋Š” ๋‹ต์ด ๋ป”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๊ณ  ๊ทธ๋ ‡๊ฒŒ ํ•  ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ ์ง€๊ธˆ์€ ๊ทธ ๋ฐ˜๋Œ€์— ๋Œ€ํ•ด ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์ƒˆ๋กœ์šด ์–ธ์–ด ํŒจํ„ด์„ ์ง„์ •์œผ๋กœ ์ˆ˜์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ž‘์„ฑ๋œ request ๋ฒ„์ „์€ ์‚ฌ์‹ค์ƒ ์ƒˆ ๋ชจ๋“ˆ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ์ด๋ฏธ ์ด ๊ณต๊ฐ„์„ ์กฐ๊ธˆ ํƒ์ƒ‰ํ–ˆ๊ณ  ๋งค์šฐ ๋งŒ์กฑํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๋ฉด์—์„œ request ์™€ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด์ „ ํŒจํ„ด๊ณผ ํ˜ธํ™˜๋˜์ง€ ์•Š์ง€๋งŒ ์ƒˆ ํŒจํ„ด์„ ์™„์ „ํžˆ ์ˆ˜์šฉํ•˜์ง€ ์•Š๋Š” request ๋ฒ„์ „์˜ ๊ฐ€์น˜๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์ƒˆ๋กœ์šด ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•˜๊ณ  ์ด๋Ÿฌํ•œ ํŒจํ„ด์„ ์—ผ๋‘์— ๋‘๊ณ  ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ๋‹ค์‹œ ์ƒ๊ฐํ•˜๊ณ  ์žˆ๋Š” ์ƒˆ๋กœ์šด ๋ชจ๋“ˆ์˜ ์ „์ฒด ์„ธ๊ณ„๊ฐ€ ์žˆ์„ ๋•Œ ๋ถ€๋ถ„์ ์œผ๋กœ ํ˜ธํ™˜๋œ๋‹ค๋Š” ์ ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์ด ์ƒˆ ๋ชจ๋“ˆ์˜ ๊ฐ€์žฅ ์ข‹์€ ์ ์€ request ๊ฐ€ ์ฒœ์ฒœํžˆ ์‚ฌ๋ผ์ง€๊ณ  ๊ฒฐ๊ตญ์—๋Š” ํ•ด๋‹น ๋ ˆ๊ฑฐ์‹œ ์Šคํƒ์˜ ๋˜ ๋‹ค๋ฅธ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. request ํ˜„์žฌ ์œ„์น˜๋ฅผ ์ทจํ•˜๊ณ  ์ด๋ฅผ ์ฐจ์„ธ๋Œ€ ๊ฐœ๋ฐœ์ž์˜ ๋” ํฐ ๋ชซ์œผ๋กœ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์€ request ์˜ ๋ถ€๋‹ด์ด ์—†๋Š” ๋” ๋‚˜์€ ๋ชจ๋“ˆ์—์„œ ๋ฉ€์–ด์ง€๊ฒŒ ํ•˜๋ฏ€๋กœ ํ•ด๋‹น ๊ฐœ๋ฐœ์ž์—๊ฒŒ ํ•ด๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค

์œ ์ง€ ๊ด€๋ฆฌ ๋ชจ๋“œ

์—ฌ๊ธฐ ๊ณ„ํš์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • request ์ƒˆ ๊ธฐ๋Šฅ ์ˆ˜๋ฝ์ด ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค.
  • request ์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๊ณ ๋ คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ์—ฌ์ „ํžˆ ํ™œ์„ฑ ์ƒํƒœ์ธ ์ปค๋ฏธํ„ฐ๋Š” ์ ์‹œ์— ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ณ‘ํ•ฉํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€๋งŒ ์•ฝ์†์€ ์—†์Šต๋‹ˆ๋‹ค.
  • ๋ฆด๋ฆฌ์Šค๋Š” ์™„์ „ํžˆ ์ž๋™ํ™”๋˜๋ฉฐ ๋งˆ์Šคํ„ฐ๋กœ์˜ ๋ณ‘ํ•ฉ์ด ๊ฒŒ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ GitHub Actions๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด ์ด๊ฒƒ์„ ๋นŒ๋“œํ–ˆ์Šต๋‹ˆ๋‹ค.

    • ์ปค๋ฐ‹ ๊ถŒํ•œ์ด ์‚ฌ์‹ค์ƒ npm ๊ฒŒ์‹œ ๊ถŒํ•œ์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„ํ™œ์„ฑ ๊ณต๋™ ์ž‘์—…์ž๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  2fa๋ฅผ ์‹œํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ƒฅ ์‚ญ์ œํ•˜๋ฉด ์–ด๋–ป๊ฒŒ ๋ ๊นŒ์š”? ์ด๋Ÿฌํ•œ ์ข…์†์„ฑ์€ ํ‚ฌ๋Ÿฌ์ž…๋‹ˆ๋‹ค!

@grikard ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋™์˜ํ•ฉ๋‹ˆ๋‹ค - ์ข‹์€ ๋ถ„์„์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์‚ฌ์†Œํ•˜๊ฒŒ ๋“ค๋ฆฌ๊ณ  ์‹ถ์ง€ ์•Š๊ณ  - ์ด๊ฒƒ์€ ์ง„์ •ํ•œ ์ฟผ๋ฆฌ์ž…๋‹ˆ๋‹ค - ๋ฏธ๊ตญ์ธ๋“ค์€ "leaf"์˜ ๋ณต์ˆ˜ํ˜•์„ leafs๋กœ ์ฒ ์žํ•ฉ๋‹ˆ๊นŒ? ๋‚˜๋Š” "์žŽ"์„ ๋นŒ๋ ค์ค๋‹ˆ๋‹ค.

์žŽ์€ ์žŽ์˜ ๋ณต์ˆ˜ํ˜•์ž…๋‹ˆ๋‹ค :)

ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘...npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐ
์˜ค๋ฅ˜๊ฐ€ ์žˆ์–ด์„œ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์—ฌ๊ธฐ์— ๊ฐ„๋‹ค๋ฉด
ng new my-app
๋‹ค์‹œ ์‹œ๋„ํ•˜์‹ญ์‹œ์˜ค
sudo ng new my-app
ํ•ดํ”ผ ํ•ดํ‚น

์•ˆ๋…•ํ•˜์„ธ์š” ์ด ์˜ค๋ฅ˜๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•? https://github.com/request/request/issues/3142

์•ˆ๋…•ํ•˜์„ธ์š” ์ด ์˜ค๋ฅ˜๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•? #3142

๋ฌด์Šจ ์˜ค๋ฅ˜?

https://github.com/request/request/issues/3142

2020๋…„ 3์›” 11์ผ ์ˆ˜์š”์ผ ์˜คํ›„ 8:23 Cliff Stanford [email protected]
์ผ๋‹ค:

์•ˆ๋…•ํ•˜์„ธ์š” ์ด ์˜ค๋ฅ˜๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•? #3142
https://github.com/request/request/issues/3142

๋ฌด์Šจ ์˜ค๋ฅ˜?

โ€”
๋‹น์‹ ์ด ๋Œ“๊ธ€์„ ๋‹ฌ์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/request/request/issues/3142#issuecomment-597602350 ,
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/AN6OSLTSIY5LZVUEOX3JWHDRG57FNANCNFSM4HCP6LRA
.

์ด๊ฒƒ ๋•Œ๋ฌธ์— ๋‚ด ํ”„๋กœ์ ํŠธ๋ฅผ ์™„๋ฃŒํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค... ๊ทธ๋ฆฌ๊ณ  ์˜ค๋Š˜ ๋ฐค ๋งˆ๊ฐ์ž…๋‹ˆ๋‹ค. ์š”์ฒญ ์‹œ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@AELDREI ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์‚ฌ์šฉ ์ค‘๋‹จ์€ ๊ฒฝ๊ณ /์ •๋ณด์ผ ๋ฟ์ด๋ฉฐ ๋ชจ๋“  ๊ฒƒ์ด ์—ฌ์ „ํžˆ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.
@valentina-js "This"๋Š” ๋‹จ์ง€ ๊ฒฝ๊ณ /์ •๋ณด์ด๋ฏ€๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ์™„๋ฃŒํ•  ์ˆ˜ ์—†๋Š” ์›์ธ์ด ๋  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฉด ๋‹ค๋ฅธ ์›์ธ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€๋ฅผ ์ฐพ์•„๋ณด๊ณ  ์œ ์‚ฌํ•œ ๋ฌธ์ œ๊ฐ€ ๋ณด๊ณ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ํ•˜๋‚˜๋ฅผ ์—ด๊ณ  ์˜ค๋ฅ˜๋ฅผ ์ž์„ธํžˆ ์„ค๋ช…ํ•˜์‹ญ์‹œ์˜ค.

์•ˆ ๋ผ. ์ด๊ฒƒ์€ ํ•„์š”ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์‚ผ๊ฐ€ ๊ณ ์ธ์˜ ๋ช…๋ณต์„ ๋น•๋‹ˆ๋‹ค

์ƒˆ๋กœ์šด ์ƒํ’ˆ

Screenshot_2020-03-12_16-58-39

3sei8v

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ

์ด๊ฑฐ ํ•ด๊ฒฐํ•ด์ฃผ์„ธ์š”! ๋‚ด๊ฐ€ ๋ญ˜ ์ž˜๋ชปํ•˜๊ณ  ์žˆ๋Š”์ง€ ๋ชจ๋ฅด๊ฒ ๋‹ค.

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm WARN checkPermissions /usr/local/lib/node_modules์— ๋Œ€ํ•œ ์“ฐ๊ธฐ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์—†์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ EACCES
npm ์˜ค๋ฅ˜! ์‹œ์Šคํ…œ ํ˜ธ์ถœ ์•ก์„ธ์Šค
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ /usr/local/lib/node_modules
npm ์˜ค๋ฅ˜! ์˜ค๋ฅ˜ ๋ฒˆํ˜ธ -13
npm ์˜ค๋ฅ˜! ์˜ค๋ฅ˜: EACCES: ๊ถŒํ•œ ๊ฑฐ๋ถ€, '/usr/local/lib/node_modules' ์•ก์„ธ์Šค
npm ์˜ค๋ฅ˜! [์˜ค๋ฅ˜: EACCES: ๊ถŒํ•œ ๊ฑฐ๋ถ€, ์•ก์„ธ์Šค '/usr/local/lib/node_modules'] {
npm ์˜ค๋ฅ˜! ์Šคํƒ: "์˜ค๋ฅ˜: EACCES: ๊ถŒํ•œ ๊ฑฐ๋ถ€, ์•ก์„ธ์Šค '/usr/local/lib/node_modules'",
npm ์˜ค๋ฅ˜! ์˜ค๋ฅ˜ ๋ฒˆํ˜ธ: -13,
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ: 'EACCES',
npm ์˜ค๋ฅ˜! ์‹œ์Šคํ…œ ํ˜ธ์ถœ: '์•ก์„ธ์Šค',
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ: '/usr/local/lib/node_modules'
npm ์˜ค๋ฅ˜! }
npm ์˜ค๋ฅ˜!
npm ์˜ค๋ฅ˜! ์šด์˜ ์ฒด์ œ์—์„œ ์ž‘์—…์„ ๊ฑฐ๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! ํ˜„์žฌ ์‚ฌ์šฉ์ž๋กœ ์ด ํŒŒ์ผ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์ด ์—†์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜!
npm ์˜ค๋ฅ˜! ๊ถŒํ•œ ๋ฌธ์ œ์ผ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด ๋‹ค์‹œ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! ํŒŒ์ผ ๋ฐ ํฌํ•จ ๋””๋ ‰ํ† ๋ฆฌ์˜ ๊ถŒํ•œ ๋˜๋Š” ์‹คํ–‰์„ ์‹œ๋„ํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! root/Administrator๋กœ ๋‹ค์‹œ ๋ช…๋ นํ•˜์‹ญ์‹œ์˜ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! /Users/Hazem/.npm/_logs/2020-03-15T16_16_03_301Z-debug.log

@hazembergg NPM์€ request ๋ธ”๋ก์ด npm install . sudo ์‹คํ–‰ํ•ด ๋ณด์„ธ์š”.

๊ท€ํ•˜์˜ ์‹ ์†ํ•œ ๋‹ต๋ณ€์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋งค๋ ฅ์ฒ˜๋Ÿผ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค!

๊ทธ๋ž˜์„œ ๋ฏธ์น  ๊ฒƒ ๊ฐ™์•„์š”! ์ ์–ด๋„ 20๋ฒˆ์€ README๋ฅผ ์ฝ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ์ „์ฒด ํ”„๋กœ๊ทธ๋žจ์€ ๋‚ด ๊ธฐ๋ณธ html ์ง€์‹ ์ด์ƒ์ž…๋‹ˆ๋‹ค ...

_์œ ํŠœ๋ธŒ ๋Œ“๊ธ€์€ ์–ด๋–ป๊ฒŒ ๋ฐ›๋‚˜์š”?_
youtube-comment-scraper๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๊นŒ ๋…ธ๋“œ์—์„œ? ๊ธฐ๋ณธ ํ„ฐ๋ฏธ๋„? ๋˜๋Š” ๋ช…๋ น?
๋…ธ๋“œ ์‘๋‹ต์€ ...
ํ„ฐ๋ฏธ๋„ ์‘๋‹ต์€ ์ œ๋ชฉ์ด ๋ณ€๊ฒฝ๋˜์ง€๋งŒ ์•„๋ฌด ์ผ๋„ ์ผ์–ด๋‚˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

_csv ํŒŒ์ผ์„ ๊ฐ–๊ณ  ์‹ถ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ฉ๋‹ˆ๊นŒ?_
๋ช…๋ น์€ youtube-comment-scraper --outputFile youtubecomments.csv --stdout --format csv์ž…๋‹ˆ๋‹ค. ์˜ณ์€?

_Ballpark ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜์—ฌ ์ˆ˜์ฒœ ๊ฐœ์˜ ๋Œ“๊ธ€์„ ์–ป์œผ๋ ค๋ฉด ์–ผ๋งˆ๋‚˜ ๊ฑธ๋ฆฝ๋‹ˆ๊นŒ?_

@hazembergg ๋‘˜ ๋‹ค. ๋ช…๋ น์ค„ ์‚ฌ์šฉ๋ฒ•์€ https://www.npmjs.com/package/youtube-comment-scraper#usage , ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹ ์‚ฌ์šฉ๋ฒ•์€ https://www.npmjs.com/package/youtube-comment-scraper#method ๋ฅผ ์ฐธ์กฐ npx youtube-comment-scraper ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

@Richienb ์ •๋ณด ๋‹ค์‹œ ํ•œ ๋ฒˆ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๋‚˜๋Š” ๊ทธ๊ฒƒ๋“ค์„ ๊ณต๋ถ€ํ•  ๊ฒƒ์ด๊ณ  ์ž˜ํ•˜๋ฉด ์„ฑ๊ณตํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค!

์˜ˆ, ๋ชจ๋‘๊ฐ€ ๋ญ”๊ฐ€๋ฅผ ์ž˜๋ชปํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. request ์ง€์› ์ค‘๋‹จ ๊ฒฐ์ •์—๋Š” ๋น„์šฉ์ด ์ „ํ˜€ ๋“ค์ง€ ์•Š๋Š”๋‹ค๊ณ  ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

๋น„์šฉ์€ ์ ˆ๋Œ€ ์—†์Šต๋‹ˆ๋‹ค!

์†Œ์Šค ํ„ฐ๋„ ์ƒ์„ฑ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‹ค์Œ ์†Œ์Šค ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
npm install -g wdio-sauce-service
25hnpm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐ
25์‹œ๊ฐ„

[email protected] ์„ค์น˜ ํ›„ /usr/local/lib/node_modules/wdio-sauce-service/node_modules/sauce-connect-launcher
๋…ธ๋“œ ์Šคํฌ๋ฆฝํŠธ/install.js || nodejs ์Šคํฌ๋ฆฝํŠธ/install.js

+ [email protected]

์†Œ์Šค ํ„ฐ๋„์„ ์ƒ์„ฑํ•˜๋Š” ๋™์•ˆ ์•„๋ž˜ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
์†Œ์Šค ์—ฐ๊ฒฐ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ข…๋ฃŒ ์ฝ”๋“œ 1 ์‹ ํ˜ธ: null
'onPrepare' ํ›„ํฌ์—์„œ ์„œ๋น„์Šค๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.
์˜ค๋ฅ˜: ์†Œ์Šค ์—ฐ๊ฒฐ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ข…๋ฃŒ ์ฝ”๋“œ 1 ์‹ ํ˜ธ: null
ChildProcess์—์„œ.(/usr/local/lib/node_modules/wdio-sauce-service/node_modules/sauce-connect-launcher/lib/sauce-connect-launcher.js:566:12)
ChildProcess.emit์—์„œ (events.js:198:13)
ChildProcess.EventEmitter.emit(domain.js:448:20)
Process.ChildProcess._handle.oneexit์—์„œ (๋‚ด๋ถ€/child_process.js:248:12)

์˜ˆ์˜๋ฅผ ๊ฐ–์ถ”์–ด ์ง„์ง€ํ•œ ์งˆ๋ฌธ์„ ๊ฒŒ์‹œํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. request ์— ๋Œ€ํ•œ ๋ฐˆ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

@anton-bot์€ ๊ทธ๊ฒƒ์„ ๋†”๋‘๊ณ  ๋‹น์‹ ์˜ ์‚ถ์„ ๊ณ„์† ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์˜๋ฅผ ๊ฐ–์ถ”์–ด ์ง„์ง€ํ•œ ์งˆ๋ฌธ์„ ๊ฒŒ์‹œํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. request ์— ๋Œ€ํ•œ ๋ฐˆ๋งŒ ์žˆ์Šต๋‹ˆ๋‹ค.

@anton-bot์€ ๊ทธ๊ฒƒ์„ ๋†”๋‘๊ณ  ๋‹น์‹ ์˜ ์‚ถ์„ ๊ณ„์† ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Let it go

์ง„์ง€ํ•˜๊ฒŒ ๋Œ์•„๊ฐ€์„œ, ์ด์ œ request ๊ฐ€ npm deprecate ๋ฅผ ํ†ตํ•ด "๊ณต์‹์ ์œผ๋กœ" ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์ด์ œ _๋ชจ๋“ _ ๋‹จ์ผ ์—…์ŠคํŠธ๋ฆผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ด์— ๋Œ€ํ•œ ์ƒˆ๋กœ์šด ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

์ž ์‹œ ์ƒ๊ฐํ•ด ๋ณผ๊นŒ์š”? ๋‚˜๋Š” ์ด๊ฒƒ์ด ๊ณผ๋„ํ•œ ๊ณตํ™ฉ์„ ์•ผ๊ธฐํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ๊ทธ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋กœ๊ทธ๋ฅผ ์ปค๋ฐ‹ํ•˜๋Š” ์ž๋™ํ™”๋œ ์‹œ์Šคํ…œ์€ ์ด์ œ ์ง€์› ์ค‘๋‹จ ๊ฒฝ๊ณ ์—์„œ ๋ฌธ์ œ ํ‚ค์˜ ์ด ๋ฌธ์ œ๋ฅผ ์ฐธ์กฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

request ๊ฐ€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์ˆ˜์ค€๊นŒ์ง€ ์„ฑ์ˆ™ํ–ˆ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•˜์ง€๋งŒ ์—ฌ์ „ํžˆ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ์œ ์ง€ ๊ด€๋ฆฌ ์ˆ˜์ค€์œผ๋กœ ์ˆ˜๋ฐฑ ๊ฐœ์˜ ์ข…์†์„ฑ์ด ์žˆ๋‹ค๋ฉด ์•„๋งˆ๋„ npm์—์„œ ๊ณต์‹์ ์œผ๋กœ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. README์—์„œ ์ตœ๋Œ€ ๊ธ€๊ผด์˜ ํฐ ๊ฒฝ๊ณ ?

๊ทธ๋ฆฌ๊ณ  ์–ธ์  ๊ฐ€๋Š” ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ "์™œ ์šฐ๋ฆฌ๋Š” ์ด์— ๋Œ€ํ•ด ๊ฒฝ๊ณ ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๊นŒ!"๋ผ๊ณ  ๋งํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๐Ÿ˜„

๊ทธ๋Ÿฌ๋‚˜ ์—ฌ์ „ํžˆ ์ž˜ ์ž‘๋™ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ์œ ์ง€ ์ˆ˜์ค€์œผ๋กœ ์ˆ˜๋ฐฑ ๊ฐœ์˜ ์ข…์†์„ฑ์ด ์žˆ๋Š” ๊ฒฝ์šฐ npm์—์„œ ๊ณต์‹์ ์œผ๋กœ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์•„์•ผ ํ•˜์ง€๋งŒ README์—์„œ ์ตœ๋Œ€ ๊ธ€๊ผด์— ๋Œ€ํ•œ ํฐ ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

๋ฌธ์ œ๋Š” ๋ณธ์งˆ์ ์œผ๋กœ _์•„๋ฌด๋„_ ์ฝ์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ง€๊ธˆ ๊ณตํ™ฉ ์ƒํƒœ์— ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์˜ 99%๋Š” NPM์ด ๊ฒฝ๊ณ ํ•˜์ง€ ์•Š๋Š” ํ•œ ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์‚ฌ์‹ค์กฐ์ฐจ ์•Œ์ง€ ๋ชปํ–ˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. _์•„๋ฌด๋„_๋Š” ์•‰์•„์„œ _๋ชจ๋“ _์˜ README๋ฅผ ์‚ดํŽด๋ณด๊ณ  ๋„ˆ๋ฌด ๋Šฆ์„ ๋•Œ๊นŒ์ง€ ์–ด๋Š ๊ฒƒ์ด ๋” ์ด์ƒ ์œ ์ง€๋˜์ง€ ์•Š๋Š”์ง€ ์•Œ์•„๋ƒ…๋‹ˆ๋‹ค.

๊ฑฐ๋“ญ ๋ง์”€๋“œ๋ฆฌ์ง€๋งŒ, ๊ท€ํ•˜๊ฐ€ ์ œ์•ˆํ•˜๋Š” ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ๋ณธ์งˆ์ ์œผ๋กœ ์‚ฌ๋žŒ๋“ค์ด ๋Œ€์‹  ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ์–ด๋ ค์šด ๋ฐฉ๋ฒ•์„ ์•Œ๊ฒŒ ๋  ๊ฒƒ์ž„์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ์ผ์ด ๋ฐœ์ƒํ•˜๋ฉด ์‚ฌ๋žŒ๋“ค์€ ๋Œ€์‹ ์— ๋Œ€์•ˆ์„ _์Šคํฌ๋žจ๋ธ”_ํ•ด์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ง€๊ธˆ๊ณผ ๊ฐ™์ด ์š”์ฒญ์ด ์—ฌ์ „ํžˆ ์•ˆ์ •์ ์ด๊ณ  ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ƒํƒœ์—์„œ ๋Œ€์•ˆ์„ ์ฐพ์„ ๊ธฐํšŒ๊ฐ€ ์žˆ๋Š” ๊ฒƒ๋ณด๋‹ค ์ ์–ด๋„ 1๋…„์€ ๋” ๊ฑธ๋ฆด ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ง€์› ์ค‘๋‹จ ์š”์ฒญ์€ ์ฑ…์ž„์ด ์žˆ๋Š” ์ผ์ด๋ฉฐ ๋˜๋Œ๋ฆด ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ์ด๋ฅผ ๋’ค์ง‘๊ธฐ๋ณด๋‹ค๋Š” ์ข‹์€ ๋Œ€์•ˆ ๋ฐ/๋˜๋Š” ํฌํฌ์— ๋™์˜ํ•˜๋Š” ๋ฐ ๋…ธ๋ ฅ์„ ์ง‘์ค‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ณ„์† ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค( https://github.com/request/request/issues/3142 ์ฐธ์กฐ) .
๊ทธ ์˜ค๋ฅ˜๋ฅผ ์–ด๋–ป๊ฒŒ ๊ณ ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@mrmehi ์—ฌ๊ธฐ์—์„œ ์ฒซ ๋ฒˆ์งธ ๋ฉ”์‹œ์ง€๋ฅผ ์ฝ์–ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์˜ค๋ฅ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์š”์ฒญ์— ์ง์ ‘์ ์œผ๋กœ ์˜์กดํ•˜๊ฑฐ๋‚˜(๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์ด๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: got ๋˜๋Š” bent ) ๋˜๋Š” ์ข…์†์„ฑ ์ค‘ ํ•˜๋‚˜๋ฅผ ํ†ตํ•ด ์ „์ด์ ์œผ๋กœ ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ ์ด๋™ํ–ˆ๊ฑฐ๋‚˜ ๊ณ„์† ์ง„ํ–‰ํ•˜๋ ค๋ฉด ping์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

@kibertoad ์ •๋ง ํ˜ผ๋ž€์Šค๋Ÿฝ๋„ค์š” ์ด์ œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”?
expo.io๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

@kibertoad ์ •๋ง ํ˜ผ๋ž€์Šค๋Ÿฝ๋„ค์š” ์ด์ œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”?
expo.io๋ฅผ ๋‹ค์šด๋กœ๋“œํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

๋‹น์‹ ์€ ์•„๋ฌด๊ฒƒ๋„ ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฒฝ๊ณ ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๋กœ๊ทธ์˜ "WARN" ๋ถ€๋ถ„์ด ๋‚˜ํƒ€๋‚ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๋‹น์‹ ์€ expo.io๊ฐ€ request ๋Œ€ํ•œ ๋Œ€์•ˆ์„ ์ฐพ๊ธฐ ์‹œ์ž‘ํ•˜๊ณ  ์‹ถ์–ดํ•  ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ _ํ•  ์ˆ˜_ ์žˆ์Šต๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ๊ทธ๊ฒƒ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์•„ ์–ธ์  ๊ฐ€๋Š” ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋“ค์€ ์—ฌ๊ธฐ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ์ด๋ฏธ ๊ทธ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
https://github.com/expo/expo-cli/issues/1659

Microsoft๋Š” ์—ฌ์ „ํžˆ ์ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. appcenter-cli๋Š” ์„ค์น˜ ์‹œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‚ฌ์šฉ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ

AppCenter ํŒ€์˜ ์‹ค์ ์„ ๊ฐ์•ˆํ•  ๋•Œ ์ด๊ฒƒ์ด ๊ณง ๋ณ€๊ฒฝ๋  ๊ฒƒ ๊ฐ™์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ๋นŒ๋“œ ๋กœ๊ทธ์—๋Š” ์–ด๋–ค ๊ฒฝ์šฐ์—๋Š” 1๋…„ ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ๊ฒฝ๊ณ ๋กœ ๊ฐ€๋“ํ•ฉ๋‹ˆ๋‹ค.

Expo-cli --global์„ ์„ค์น˜ํ•˜๋Š” ๋™์•ˆ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ๋Š” ์ €๋ฅผ ๋„์™€์ฃผ์„ธ์š”.
๋…ธ๋“œ, git์„ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋ช…๋ น์„ npm install expo-cli --global๋กœ ์ž‘์„ฑํ•˜์ง€๋งŒ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฌธ์ œ์— ์ง๋ฉดํ•ด ์žˆ์Šต๋‹ˆ๋‹ค.
"npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
[..................] | fetchMetadata: WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ""๋ฅผ ์ฐธ์กฐ
์ด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค์ฃผ์„ธ์š”.

@mrmehi ์—ฌ๊ธฐ์—์„œ ์ฒซ ๋ฒˆ์งธ ๋ฉ”์‹œ์ง€๋ฅผ ์ฝ์–ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์˜ค๋ฅ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์š”์ฒญ์— ์ง์ ‘์ ์œผ๋กœ ์˜์กดํ•˜๊ฑฐ๋‚˜(๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์ด๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: got ๋˜๋Š” bent ) ๋˜๋Š” ์ข…์†์„ฑ ์ค‘ ํ•˜๋‚˜๋ฅผ ํ†ตํ•ด ์ „์ด์ ์œผ๋กœ ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฏธ ์ด๋™ํ–ˆ๊ฑฐ๋‚˜ ๊ณ„์† ์ง„ํ–‰ํ•˜๋ ค๋ฉด ping์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ๋ฌธ์ œ์— ์ง๋ฉดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@lemessur ๊ฒฐ๊ณผ์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋Š” ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์‚ฌ์‹ค์„ ๋ชฐ๋ž์Šต๋‹ˆ๋‹ค. https://github.com/microsoft/appcenter-cli/pull/758#issuecomment -603667106 ์ฐธ์กฐ

๋ˆ„๊ฐ€ ์ฃผ์š” ๋ฌธ์ œ ๋Œ“๊ธ€ ์ƒ๋‹จ์— ์ด๊ฒƒ์„ ์˜ฌ๋ ค์ฃผ์„ธ์š”.

์ง€์› ์ค‘๋‹จ ์•Œ๋ฆผ

์ข…์†์„ฑ์„ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•  ๋•Œ WARN deprecated [email protected]: request has been deprecated, see #3142 ๋˜๋ฉด ์ด๊ฒƒ์€ ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹˜ ์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค. ์„ค์น˜ํ•˜๋ ค๋Š” ํŒจํ‚ค์ง€์˜ ์ž‘์„ฑ์ž(๋˜๋Š” request ์— ์˜์กดํ•˜๋Š” ๊ฒฝ์šฐ)๋Š” ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฐธ์กฐ: https://github.com/request/request/issues/3143

@alijatoi
https://github.com/request/request/issues/3142#issuecomment -604126783 ์ฐธ์กฐ

@Richienb
#3142(๋Œ“๊ธ€) ์ฐธ์กฐ

์ด์ œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ? ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

@Richienb
#3142(๋Œ“๊ธ€) ์ฐธ์กฐ

์ €๋Š” github์—์„œ ์ฒ˜์Œ์ด๊ณ  ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š”์ง€ ์ดํ•ดํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋‹จ๊ณ„๋ณ„๋กœ ์•Œ๋ ค์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋‹น์‹ ์˜ ๋น ๋ฅธ ์‘๋‹ต์„ ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

@alijatoi expo-cli ๋Š” request ์žˆ์œผ๋ฏ€๋กœ ์ข…์†์„ฑ์„ ๋ณ€๊ฒฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@Richienb ์ด์ œ ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ? ๊ธฐ๋‹ค๋ฆฌ๊ฑฐ๋‚˜ expo-cli๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?
๋„์™€์ฃผ์„ธ์š” ๋‚ด๊ฐ€ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค

@alijatoi ๋ฌธ์ œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ธฐ๋‹ค๋ฆฌ์„ธ์š”.

@Richienb ๋‹ต๋ณ€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.
expo cli๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์€ ์—†๋‚˜์š”?

@alijatoi no

์—ฌ๋Ÿฌ๋ถ„, ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด deprecated ๋ฉ”์‹œ์ง€๋กœ ์ธํ•ด npm์œผ๋กœ expo-cli๋ฅผ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค. install yarn ๋‹ค์Œ yarn install expo-cli

@caio-vinicius yarn์ด ๊ฒฝ๊ณ ๋ฅผ ํ•œ ๋ฒˆ๋งŒ ํ‘œ์‹œํ•˜๊ณ  ์ž ๊ธˆ ํŒŒ์ผ์„ ์žฌ์ƒ์„ฑํ•  ๋•Œ ๊ณ„์† ํ‘œ์‹œํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ๋ถ„, ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด deprecated ๋ฉ”์‹œ์ง€๋กœ ์ธํ•ด npm์œผ๋กœ expo-cli๋ฅผ ์„ค์น˜ํ•˜์‹ญ์‹œ์˜ค. install yarn ๋‹ค์Œ yarn install expo-cli

@caio-vinicius ์˜ˆ ์„ค์น˜ ์›์‚ฌ๋ฅผ ์‚ฌ์šฉํ•œ ๋‹ค์Œ ์›์‚ฌ install expo-cli globlly๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜๋ฅผ ์™„๋ฃŒํ–ˆ์ง€๋งŒ ์„ค์น˜ ํ›„ expo cli ๋ฒ„์ „์„ ํ™•์ธํ•  ๋•Œ expo๊ฐ€ ๋‚ด๋ถ€ ๋˜๋Š” ์™ธ๋ถ€ ๋ช…๋ น์„ ์ •์˜ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

@alijatoi ์›์‚ฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ „์—ญ์ ์œผ๋กœ ์„ค์น˜ํ•  ๋•Œ ์˜ฌ๋ฐ”๋ฅธ ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

https://classic.yarnpkg.com/en/docs/cli/global/

๊ทธ๋Ÿฌ๋‚˜ @alijatoi , ์„ค์น˜ ์ค‘๋‹จ ๊ฒฝ๊ณ ๋ฅผ ์œ„๋ฐ˜ํ•˜๋Š” ์„ค์น˜๋Š” ์„ค์น˜ํ•˜๋ ค๋Š” ํ™˜๊ฒฝ์ด๋‚˜ ํŒจํ‚ค์ง€์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒƒ์ด ๊ฑฐ์˜ ํ™•์‹คํ•ฉ๋‹ˆ๋‹ค. ํŠน์ • ์š”์ฒญ์ด ์•„๋‹ˆ๋ฉฐ ์—ฌ๊ธฐ์— ๋ณด๊ณ ํ•ด์•ผ ํ•˜๋Š” ์‚ฌํ•ญ์€ ์—†์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ํŒŒํ‹ฐ์— ์กฐ๊ธˆ ๋Šฆ์—ˆ์ง€๋งŒ ์‚ฌ๋žŒ๋“ค์ด http.ClientRequest ๋‚ด์žฅ๋œ nodejs ์™€ ๊ฐ™์ด request ๋ฅผ ๋Œ€์ฒดํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ž‘์€ ๋Œ€์•ˆ ๋ชฉ๋ก์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”.

NS

ํ˜•์‹, ํ˜ธํ™˜์„ฑ ๋ฐ ์ง„ํ–‰ ์ƒํ™ฉ์— ๋Œ€ํ•ด ๋ง์”€ํ•˜์‹  ๋ชจ๋“  ๋‚ด์šฉ์— ๋™์˜ํ•˜์ง€๋งŒ
์™œ [email protected] ์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ฌด์‹œํ•  ์ˆ˜ ์—†๋Š”์ง€ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ semver ์ด๋ฉด์˜ ์•„์ด๋””์–ด์ž…๋‹ˆ๋‹ค ...

๋‹ค๋ฅธ ๋งŽ์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ƒˆ๋กœ์šด ํŒจํ„ด๊ณผ ๊ธฐ๋Šฅ์„ ์ฑ„ํƒํ•˜์—ฌ ํ˜ธํ™˜์„ฑ์„ ๊นจ๊ณ  ์ „๊ณต์„ ๋†’์˜€์Šต๋‹ˆ๋‹ค.

์™„์ „ํžˆ ์ƒˆ๋กœ์šด ๋ชจ๋“ˆ์ผ์ง€๋ผ๋„ - ์ด๋ฆ„์€ ์‹ ๋ขฐ์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ
๋ฐฐ์šด ๊ตํ›ˆ์˜ ๊ฒฝํ—˜์ด ์‚ฌ๋ผ์ง€๋Š” ๊ฒƒ์„ ๋ณด๋‹ˆ ์•ˆํƒ€๊น์Šต๋‹ˆ๋‹ค.

์ด์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์•Œ์•„๋ณด์‹ญ์‹œ์˜ค.

๊ธ€์Ž„์š”, ๋ผ์ด๋“œ์™€ ๋ชจ๋“  ๋…ธ๋ ฅ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๐Ÿ‘

๋‹น์‹ ์€ ๋‚˜์˜ ์ฃผ์ธ, ์˜์›…์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” JS/Node(์ผ๋ฐ˜์ ์œผ๋กœ)๋ฅผ ๋งŒ๋“œ๋Š” ์ด๋ฉด์˜ ์ด์œ ๋ฅผ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค. ์กฐ๊ธˆ ๋” ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.

jQuery๊ฐ€ ๋ธŒ๋ผ์šฐ์ €/DOM ๊ณต๊ฐ„์— ๋Œ€ํ•ด ์ˆ˜ํ–‰ํ•œ ๊ฒƒ์ฒ˜๋Ÿผ NodeJS ๊ณต๊ฐ„์— ๋Œ€ํ•ด '๊ฑฐ์˜' ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์€ TCP๋กœ ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์„ ์ฆ๊ฒ๊ฒŒ ๋งŒ๋“ค์—ˆ์œผ๋ฉฐ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์— ๋งค์šฐ โ€‹โ€‹์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์ž˜ ์ง€๋‚ด์„ธ์š”.

๊ทธ๋ ‡๋‹ค๋ฉด ๋…ธ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ด ์ฒ˜์Œ์ธ ์ €๋ฅผ ์œ„ํ•ด https ์š”์ฒญ์„ ๋งŒ๋“œ๋Š” ๋Œ€์ฒด ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

ํด๋ฆฌํ”„ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

NPM์— ๋Œ€ํ•œ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์˜ˆ๊ธฐ์น˜ ์•Š์€ ๊ฒฝ๊ณ  ๊ฒฝ๊ณ  https://registry.npmjs.org/ : ๊ธฐํƒ€ ๊ฒฝ๊ณ  EINTEGRITY์„ : ์› sha512-7G3s83fOoweLlAsvR3wtw4DnepkrY + / FxmYxk1XnfAjE9xnoWRy9cLHWCywcc6l6018X1RdNxpJdtqX9WQAEXw == ๋งŒ ๊ฐ€์ง€๊ณ  SHA512 - NhZAWqNqTzZaAfgJYp0NlbBDUX8BMyOmobe3kYnymXfSxDgaiej4nP6N3aLVDtBTPHOfivySRs + AVsca0JgrTQ : SHA512๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ sha512-7G3s83fOoweLlAsvR3wtw4DnepkrY + / FxmYxk1XnfAjE9xnoWRy9cLHWCywcc6l6018X1RdNxpJdtqX9WQAEXw == ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์‚ฌ๊ฐ€ ์‹คํŒจ ==. (20905๋ฐ”์ดํŠธ)
npm WARN ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์žฌ๊ฒ€์ฆ ์ค‘ ์š”์ฒญ ์˜ค๋ฅ˜๋กœ ์ธํ•ด https://registry.npmjs.org/์˜ ์˜ค๋ž˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ EINTEGRITY
npm ์˜ค๋ฅ˜! errno EINTEGRITY
npm ์˜ค๋ฅ˜! ์ธ์ถœํ•˜๋Š” ๋™์•ˆ ์ž˜๋ชป๋œ ์‘๋‹ต ๋ณธ๋ฌธ https://registry.npmjs.org/uuid์„ : sha512-7G3s83fOoweLlAsvR3wtw4DnepkrY + / FxmYxk1XnfAjE9xnoWRy9cLHWCywcc6l6018X1RdNxpJdtqX9WQAEXw == (C ์‹คํŒจ ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์ฆ : \ ์‚ฌ์šฉ์ž \ MULAMBA ์„ธ๋ฅด์ง€์˜ค \์˜ AppData \ Roamingnpm-cache_cacache \ ๋‚ด์šฉ V2 \ SHA512 \ec\6d\ecf377cea3078b940b2f477c2dc380e77a992b63efc5c666319355e77c08c4f719e8591cbd70b1d60b2c1c73a97ad317f

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\MULAMBA SERGIO\AppData\Roamingnpm-cache_logs\2020-04-03T22_54_57_842Z-debug.log

npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
npm WARN deprecated [email protected]: ์ด ๋ฒ„์ „์€ hapi ์ง€์› ์ •์ฑ…(hapi.im/support)์— ๋”ฐ๋ผ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ตœ๊ณ ์˜ ๊ธฐ๋Šฅ, ๋ฒ„๊ทธ ์ˆ˜์ • ๋ฐ ๋ณด์•ˆ ํŒจ์น˜๋ฅผ ๋ฐ›์œผ๋ ค๋ฉด ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค. ํ˜„์žฌ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ด์ „ ๋ฒ„์ „(hapi.im/commercial)์— ๋Œ€ํ•œ ์œ ๋ฃŒ ์ง€์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค(https://github.com/request/request/issues/3142 ์ฐธ์กฐ).
npm WARN deprecated [email protected]: core-js@<3์€ ๋” ์ด์ƒ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์œผ๋ฉฐ ๋ฌธ์ œ์˜ ์ˆ˜๋กœ ์ธํ•ด ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ข…์†์„ฑ์„ core-js@3์˜ ์‹ค์ œ ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค.
npm WARN deprecated [email protected]: ์ด ๋ฒ„์ „์€ hapi ์ง€์› ์ •์ฑ…(hapi.im/support)์— ๋”ฐ๋ผ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ตœ๊ณ ์˜ ๊ธฐ๋Šฅ, ๋ฒ„๊ทธ ์ˆ˜์ • ๋ฐ ๋ณด์•ˆ ํŒจ์น˜๋ฅผ ๋ฐ›์œผ๋ ค๋ฉด ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค. ํ˜„์žฌ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ด์ „ ๋ฒ„์ „(hapi.im/commercial)์— ๋Œ€ํ•œ ์œ ๋ฃŒ ์ง€์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm WARN deprecated [email protected]: ์ด ๋ฒ„์ „์€ hapi ์ง€์› ์ •์ฑ…(hapi.im/support)์— ๋”ฐ๋ผ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ตœ๊ณ ์˜ ๊ธฐ๋Šฅ, ๋ฒ„๊ทธ ์ˆ˜์ • ๋ฐ ๋ณด์•ˆ ํŒจ์น˜๋ฅผ ๋ฐ›์œผ๋ ค๋ฉด ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค. ํ˜„์žฌ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ด์ „ ๋ฒ„์ „(hapi.im/commercial)์— ๋Œ€ํ•œ ์œ ๋ฃŒ ์ง€์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm WARN deprecated [email protected]: ์ด ๋ฒ„์ „์€ hapi ์ง€์› ์ •์ฑ…(hapi.im/support)์— ๋”ฐ๋ผ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ตœ๊ณ ์˜ ๊ธฐ๋Šฅ, ๋ฒ„๊ทธ ์ˆ˜์ • ๋ฐ ๋ณด์•ˆ ํŒจ์น˜๋ฅผ ๋ฐ›์œผ๋ ค๋ฉด ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค. ํ˜„์žฌ ์—…๊ทธ๋ ˆ์ด๋“œํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ด์ „ ๋ฒ„์ „(hapi.im/commercial)์— ๋Œ€ํ•œ ์œ ๋ฃŒ ์ง€์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm WARN deprecated [email protected]: ์ด ๋ชจ๋“ˆ์ด ์ด๋™ํ–ˆ์œผ๋ฉฐ ์ด์ œ @hapi/topo์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฒ„์ „์€ ๋” ์ด์ƒ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋ฒ„๊ทธ ๋ฐ ๋ณด์•ˆ ๋ฌธ์ œ๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ข…์†์„ฑ์„ ์—…๋ฐ์ดํŠธํ•˜์‹ญ์‹œ์˜ค.
npm WARN ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” [email protected]: ์ด ๋ชจ๋“ˆ์ด ์ด๋™๋˜์—ˆ์œผ๋ฉฐ ์ด์ œ @hapi/hoek์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฒ„์ „์€ ๋” ์ด์ƒ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋ฒ„๊ทธ ๋ฐ ๋ณด์•ˆ ๋ฌธ์ œ๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ข…์†์„ฑ์„ ์—…๋ฐ์ดํŠธํ•˜์‹ญ์‹œ์˜ค.
C:\Users\Matheus\AppData\Roaming\npm\expo -> C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\bin\expo.js
C:\Users\Matheus\AppData\Roaming\npm\expo-cli -> C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\bin\expo.js
npm WARN ์„ ํƒ์  ์ƒ๋žต ์˜ต์…˜ ์ข…์†์„ฑ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\traveling-fastlane-darwin):
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"darwin","arch":"any"}(ํ˜„์žฌ: {"os":" win32","์•„์น˜":"x64"})
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-linux-arm) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"linux","arch":"arm"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-darwin-ia32) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"darwin","arch":"ia32"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-freebsd-x64) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"freebsd","arch":"x64"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-freebsd-ia32) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"freebsd","arch":"ia32"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-linux-ia32) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"linux","arch":"ia32"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm WARN ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-linux-x64) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"linux","arch":"x64"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm WARN ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-darwin-x64) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"darwin","arch":"x64"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin- win32-ia32):
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"win32","arch":"ia32"}(ํ˜„์žฌ: {"os":"win32","arch":"x64"})
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-sunos-x64) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"sunos","arch":"x64"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected](node_modules\expo-cli\node_modules\@expo\ngrok-bin\node_modules\@expo\ngrok-bin-linux-arm64) :
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: @expo/[email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"linux","arch":"arm64"}(ํ˜„์žฌ: {"os" :"win32","์•„์น˜":"x64"})
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: fsevents@^1.2.7(node_modules\expo-cli\node_modules\chokidar\node_modules\fsevents):
npm ๊ฒฝ๊ณ  notsup ์„ ํƒ์  ์ข…์†์„ฑ ๊ฑด๋„ˆ๋›ฐ๊ธฐ: [email protected]์— ๋Œ€ํ•ด ์ง€์›๋˜์ง€ ์•Š๋Š” ํ”Œ๋žซํผ: ์›ํ•˜๋Š” {"os":"darwin","arch":"any"}(ํ˜„์žฌ: {"os":"win32","arch": "x64"})
npm WARN @expo/[email protected]์—๋Š” sharp-cli@^1.10.0 ํ”ผ์–ด๊ฐ€ ํ•„์š”ํ•˜์ง€๋งŒ ์•„๋ฌด ๊ฒƒ๋„ ์„ค์น˜๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํ”ผ์–ด ์ข…์†์„ฑ์„ ์ง์ ‘ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\abbrev):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\abbrev' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.abbrev.DELETE'
npm WARN ์„ ํƒ์  ์ƒ๋žต ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\ansi-regex):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\ansi-regex' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.ansi-regex.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\aproba):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\aproba' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.aproba.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\balanced-match):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\balanced-match' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.balanced-match.DELETE'
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\chownr):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\chownr' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.chownr.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\code-point-at):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\code-point-at' -> 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.code-point-at.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\concat-map):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\concat-map' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.concat-map.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\console-control-strings):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\console-control-strings' -> 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.console-control-strings.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\core-util-is):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\core-util-is' -> 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.core-util-is.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\deep-extend):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\deep-extend' -> 'C๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.deep-extend.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\delegates):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\delegates' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.delegates.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\detect-libc):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\detect-libc' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.detect-libc.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\fs.realpath):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\fs.realpath' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.fs.realpath.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\has-unicode):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\has-unicode' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.has-unicode.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\inherits):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\inherits' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.inherits.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\ini):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\ini' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.ini.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\isarray):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\isarray' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.isarray.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\minimist):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\minimist' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.minimist.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\ms):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\ms' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.ms.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\npm-normalize-package-bin):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\npm-normalize-package-bin'์œผ๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. -> 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.npm-normalize-package-bin.DELETE'
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\number-is-nan):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\number-is-nan' -> 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.number-is-nan.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\object-assign):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\object-assign' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.object-assign.DELETE'
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\os-homedir):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\os-homedir' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.os-homedir.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\os-tmpdir):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\os-tmpdir' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.os-tmpdir.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\path-is-absolute):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\path-is-absolute' -> 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.path-is-absolute.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\process-nextick-args):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\process-nextick-args' -> 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.process-nextick-args.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\safe-buffer):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\safe-buffer' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.safe-buffer.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\safer-buffer):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\safer-buffer' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.safer-buffer.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\sax):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\sax' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.sax.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\semver):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\semver' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.semver.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\set-blocking):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\set-blocking' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.set-blocking.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\signal-exit):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\signal-exit' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.signal-exit.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\strip-json-comments):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\strip-json-comments' -> 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.strip-json-comments.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\util-deprecate):
npm WARN enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\util-deprecate' -> 'C :\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.util-deprecate.DELETE'
npm ๊ฒฝ๊ณ  ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\wrappy):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\wrappy' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.wrappy.DELETE'
npm WARN ์„ ํƒ์  ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์˜ต์…˜ ์ข…์†์„ฑ: [email protected](node_modules\expo-cli\node_modules\fsevents\node_modules\yallist):
npm ๊ฒฝ๊ณ  enoent ๊ฑด๋„ˆ๋›ฐ๊ธฐ ์„ ํƒ์  ์ข…์†์„ฑ: ENOENT: ํ•ด๋‹น ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ„ฐ๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฆ„์„ 'C:\Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules\yallist' -> 'C:\ Users\Matheus\AppData\Roaming\npm\node_modules\expo-cli\node_modules\fsevents\node_modules.yallist.DELETE'

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
๋„์™€ ์ฃผ์‹ค ์ˆ˜ ์žˆ์œผ์‹ ๊ฐ€์š”? ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์œผ๋ฉฐ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. #3142 ์ฐธ์กฐ
๋„์™€ ์ฃผ์‹ค ์ˆ˜ ์žˆ์œผ์‹ ๊ฐ€์š”? ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†์œผ๋ฉฐ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋‚˜๋„

@liaz98 @TheLitz ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฒฝ๊ณ ์ž…๋‹ˆ๋‹ค. npm ๊ฒฝ๊ณ ๋กœ ์ธํ•ด ํ”„๋กœ์ ํŠธ๊ฐ€ ๋นŒ๋“œ/์‹œ์ž‘๋˜์ง€ ์•Š์œผ๋ฉด ํ”„๋กœ์ ํŠธ ๋ฐ/๋˜๋Š” ํ™˜๊ฒฝ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์š”์ฒญ์— ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

@liaz98 @TheLitz ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹ˆ๋ผ ๊ฒฝ๊ณ ์ž…๋‹ˆ๋‹ค. npm ๊ฒฝ๊ณ ๋กœ ์ธํ•ด ํ”„๋กœ์ ํŠธ๊ฐ€ ๋นŒ๋“œ/์‹œ์ž‘๋˜์ง€ ์•Š์œผ๋ฉด ํ”„๋กœ์ ํŠธ ๋ฐ/๋˜๋Š” ํ™˜๊ฒฝ์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์š”์ฒญ์— ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ Expo๋ฅผ ์‹คํ–‰ํ•˜๋ ค๊ณ  ํ•˜๋ฉด ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@TheLitz ๊ทธ๋ ‡๋‹ค๋ฉด Expo์˜ ๋ฌธ์ œ์ด๋ฉฐ ๋ฒ„๊ทธ ์ถ”์ ๊ธฐ์— ๋ณด๊ณ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ์ธก์—์„œ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ฑฐ๋‚˜ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

@TheLitz ๊ทธ๋ ‡๋‹ค๋ฉด Expo์˜ ๋ฌธ์ œ์ด๋ฉฐ ๋ฒ„๊ทธ ์ถ”์ ๊ธฐ์— ๋ณด๊ณ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ์ธก์—์„œ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ฑฐ๋‚˜ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

ํ™•์ธ. ๊ฐ์‚ฌ ํ•ด์š”

์šฐ๋ฆฌ๋Š” ๋ฏธ๋ž˜์˜ ์š”์ฒญ์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.

tldr;
๋‚˜๋Š” ์ง€๊ธˆ ๋ฌด์—‡์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

@YashKumarVerma ์‚ฌ์šฉ postman-request

@TheLitz ๊ทธ๋ ‡๋‹ค๋ฉด Expo์˜ ๋ฌธ์ œ์ด๋ฉฐ ๋ฒ„๊ทธ ์ถ”์ ๊ธฐ์— ๋ณด๊ณ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ์ธก์—์„œ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๊ฑฐ๋‚˜ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๊นŒ????
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ๋…ธ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ด ์ฒ˜์Œ์ธ ์ €๋ฅผ ์œ„ํ•ด https ์š”์ฒญ์„ ๋งŒ๋“œ๋Š” ๋Œ€์ฒด ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

@OluwafemiAdesegha
์ด๋™ ์œ„์น˜์— ๋Œ€ํ•ด ์•ฝ๊ฐ„์˜ ๋ช…ํ™•์„ฑ์„ ์–ป์—ˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ๋‹น์‹ ๊ณผ ๊ฐ™์€ ๋ฐฐ์— ์žˆ์Šต๋‹ˆ๋‹ค! :(

๋Œ€์•ˆ์„ ์ฐพ๋Š” ์‚ฌ๋žŒ์€ #3143( @farhan3040 @OluwafemiAdesegha @iamdesfranco )์„ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.

@mikeal ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ;)

@iamdesfranco @farhan3040 HTTP๋Š” ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. Gopher ๋˜๋Š” UDP๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

@mikeal ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ;)

์•„๋‹ˆ๋ฉด ์ฐจ๋ผ๋ฆฌ ์ž ๊ทธ์„ธ์š”. ๋ณธ์งˆ์ ์œผ๋กœ ๋งํ•ด์•ผ ํ•  ๋ชจ๋“  ๊ฒƒ์€ ์ด ์‹œ์ ์—์„œ ๋งํ–ˆ๊ณ , ๋ฌป๋Š” ์œ ์ผํ•œ ์งˆ๋ฌธ์€ ์ด๋ฏธ ๋‹ต๋ณ€๋œ ์งˆ๋ฌธ(์—ฌ๋Ÿฌ ๋ฒˆ)์ธ ๊ฒฝํ–ฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋ž‘์ฝ”,

๋‹ต๋ณ€์ด ๋Šฆ์–ด ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ์—ฌ์ „ํžˆ ๋‚ด๊ฐ€ ์–ด๋–ค ๊ฒƒ์„ ๋ณด๋ ค๊ณ  ๋…ธ๋ ฅ ์ค‘์ด์•ผ
๋งˆ์ง€๋ง‰์œผ๋กœ ์ฃผ์–ด์ง„ ์ œ์•ˆ์— ๋”ฐ๋ผ ๊ฐ€์‹ญ์‹œ์˜ค.

2020๋…„ 4์›” 6์ผ ์›”์š”์ผ, ์˜ค์ „ 9:12 Franco Labuschagne [email protected]
์ผ๋‹ค:

๊ทธ๋ž˜์„œ ๋‚˜๋ฅผ ์œ„ํ•ด https ์š”์ฒญ์„ ๋งŒ๋“œ๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ
๋…ธ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ž…๋‹ˆ๊นŒ?

์ด๋™ ์œ„์น˜์— ๋Œ€ํ•ด ์•ฝ๊ฐ„์˜ ๋ช…ํ™•์„ฑ์„ ์–ป์—ˆ์Šต๋‹ˆ๊นŒ? ๋‚˜๋Š” ๊ฐ™์€ ๋ฐฐ์— ์žˆ๋‹ค
๋„ˆ์ฒ˜๋Ÿผ! :(

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/request/request/issues/3142#issuecomment-609643295 ,
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/AOL4QYXM7V2BUK5LZCS7LDDRLGFH5ANCNFSM4HCP6LRA
.

๊ฐ€๋Šฅํ•œ ๋Œ€์•ˆ์€ ์ด ๋ฌธ์ œ๋ฅผ ์ฐธ์กฐํ•ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€์—์„œ ๋Œ€์•ˆ์„ ์–ด๋””์—์„œ ์ฐพ์•˜์Šต๋‹ˆ๊นŒ?

๋ธŒ๋ผ์šฐ์ €์—์„œ ๊ฐ€์ ธ์˜ค๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๋…ธ๋“œ์— ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ฐ€์ ธ์˜ค๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ผ๋Š” ์ œ์•ˆ์ž…๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด ๊ทธ๋ƒฅ ์•ฝ์† ๊ธฐ๋ฐ˜ ๋Œ€์•ˆ์ž…๋‹ˆ๊นŒ?

@TomYeoman ์ œ์•ˆ์€ request ์‚ฌ์šฉ ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@Richienb ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. README์— ์ด์— ๋Œ€ํ•œ ๋งํฌ๊ฐ€ ์žˆ๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

"node_modules" ํด๋” ๋ฐ "package-lock.json" ํŒŒ์ผ์„ ์ œ๊ฑฐํ•œ ํ›„ ๋‹ค์Œ 2๊ฐ€์ง€ ๋ช…๋ น์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.
npm ์ดˆ๊ธฐํ™”
npm ์„ค์น˜

๊ทธ๋Ÿฐ ๋‹ค์Œ ์ œ๋Œ€๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

์—ฌ์ „ํžˆ ํ™œ์„ฑ ์ƒํƒœ์ธ ์ปค๋ฏธํ„ฐ๋Š” ์ ์‹œ์— ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ณ‘ํ•ฉํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€๋งŒ ์•ฝ์†์€ ์—†์Šต๋‹ˆ๋‹ค.

๋ฉ‹์ง„ ์šฐ์—ฐ(?) ๋ง์žฅ๋‚œ

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ

์ด๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•??,

@anton-bot ๋ฉ€์›จ์–ด๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. #3142 ์ฐธ์กฐ

์ด๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•??,

@Amouthinie ํ•ด๊ฒฐํ•  ๊ฒƒ์ด ์—†์Šต๋‹ˆ๋‹ค. ์˜ค๋ฅ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. NPM์€ request ๊ฐ€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ request ์— ์˜์กดํ•˜๋Š” ์ข…์†์„ฑ์„ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ์‚ฌ๋žŒ์€ ๋Œ€์‹  ์ ๊ทน์ ์œผ๋กœ ์œ ์ง€ ๊ด€๋ฆฌ๋˜๋Š” ํŒจํ‚ค์ง€๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•ด์•ผ ํ•œ๋‹ค๊ณ  ๊ฒฝ๊ณ ํ•ฉ๋‹ˆ๋‹ค.

๋‘ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
1 - sudo apt-get install nodejs npm
ํŒจํ‚ค์ง€ ๋ชฉ๋ก์„ ์ฝ๋Š” ์ค‘... ์™„๋ฃŒ
์˜์กด์„ฑ ํŠธ๋ฆฌ ๊ตฌ์ถ•
์ƒํƒœ ์ •๋ณด๋ฅผ ์ฝ๋Š” ์ค‘... ์™„๋ฃŒ
nodejs๋Š” ์ด๋ฏธ ์ตœ์‹  ๋ฒ„์ „(13.13.0-1nodesource1)์ž…๋‹ˆ๋‹ค.
์ผ๋ถ€ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์˜๋ฏธ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
๋ถˆ๊ฐ€๋Šฅํ•œ ์ƒํ™ฉ์„ ์š”์ฒญํ–ˆ๊ฑฐ๋‚˜
๋ถˆ์•ˆ์ •ํ•œ ๋ฐฐํฌ, ์ผ๋ถ€ ํ•„์ˆ˜ ํŒจํ‚ค์ง€๊ฐ€
์•„์ง ์ƒ์„ฑ๋˜์—ˆ๊ฑฐ๋‚˜ "์ˆ˜์‹ "์—์„œ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
๋‹ค์Œ ์ •๋ณด๋Š” ์ƒํ™ฉ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ํŒจํ‚ค์ง€์—๋Š” ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ์ข…์†์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
nodejs : ์ถฉ๋Œ: npm
E: ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์—†๊ณ  ๊นจ์ง„ ํŒจํ‚ค์ง€๋ฅผ ๋ณด๊ด€(๋ณด๋ฅ˜)ํ–ˆ์Šต๋‹ˆ๋‹ค.

2 - sudo npm install -g @angular/cli
npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
npm ์˜ค๋ฅ˜! EEXIST ์ฝ”๋“œ
npm ์˜ค๋ฅ˜! ์‹œ์Šคํ…œ ํ˜ธ์ถœ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ ../lib/node_modules/@angular/cli/bin/ng
npm ์˜ค๋ฅ˜! ๋Œ€์ƒ /usr/bin/ng
npm ์˜ค๋ฅ˜! ์˜ค๋ฅ˜ ๋ฒˆํ˜ธ -17
npm ์˜ค๋ฅ˜! EEXIST: ํŒŒ์ผ์ด ์ด๋ฏธ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. symlink '../lib/node_modules/@angular/cli/bin/ng' -> '/usr/bin/ng'
npm ์˜ค๋ฅ˜! ํŒŒ์ผ ์กด์žฌ: /usr/bin/ng
npm ์˜ค๋ฅ˜! ๊ธฐ์กด ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์‹œ๋„ํ•˜๊ฑฐ๋‚˜ npm์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! --force๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌด๋ชจํ•˜๊ฒŒ ํŒŒ์ผ์„ ๋ฎ์–ด์”๋‹ˆ๋‹ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! /home/anderson/.npm/_logs/2020-04-17T16_25_56_704Z-debug.log

์ €๋Š” Linux Mint ์‚ฌ์šฉ์ž์ž…๋‹ˆ๋‹ค. 19.3 Cinnamon, 4.4.8, 5.3.0-46-generic

์•„๋ฌด๋„ ๋‚˜๋ฅผ ๋„์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@LeloCorrea ๊ท€ํ•˜์˜ ์˜ค๋ฅ˜๋Š” request ์™€ ๊ด€๋ จ์ด ์—†์œผ๋ฉฐ ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

npm ERR! EEXIST: file already exists, symlink '../lib/node_modules/@angular/cli/bin/ng' -> '/usr/bin/ng'

@LeloCorrea ๊ท€ํ•˜์˜ ์˜ค๋ฅ˜๋Š” request ์™€ ๊ด€๋ จ์ด ์—†์œผ๋ฉฐ ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

npm ERR! EEXIST: file already exists, symlink '../lib/node_modules/@angular/cli/bin/ng' -> '/usr/bin/ng'

์ด ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์•„์‹ญ๋‹ˆ๊นŒ?

@LeloCorrea ๊ท€ํ•˜์˜ ์˜ค๋ฅ˜๋Š” request ์™€ ๊ด€๋ จ์ด ์—†์œผ๋ฉฐ ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ERR! EEXIST: file already exists, symlink '../lib/node_modules/@angular/cli/bin/ng' -> '/usr/bin/ng'

์ด ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์•„์‹ญ๋‹ˆ๊นŒ?

์™„์ „ํžˆ ๊ฐ™์€ ๋ฌธ์ œ๋Š” ์•„๋‹ˆ์ง€๋งŒ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๋™์ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

https://stackoverflow.com/questions/48808384/angular-cli-error-path-and-code-eexist

๋˜ํ•œ ๋‹ค์‹œ ๋งํ•˜์ง€๋งŒ ์ด ๋ฌธ์ œ๋Š” ์–ด๋–ค ์‹์œผ๋กœ๋“  ์š”์ฒญ๊ณผ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค . ๊ด€๋ จ ๋ฌธ์ œ ์ถ”์ ๊ธฐ์—์„œ Angular CLI์— ๋Œ€ํ•œ ๋„์›€์„ ์š”์ฒญํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ๊ถŒ์žฅ๋˜๋Š” ๋Œ€์•ˆ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? http/https ํŒจํ‚ค์ง€๋งŒ ์‚ฌ์šฉ ์ค‘์ด์‹ ๊ฐ€์š”?

@RonRofe ์ €๋Š” https://github.com/sindresorhus/got ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ข‹์€ ํ›„๊ณ„์ž์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. request ์—์„œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ

@RonRofe ์—ฌ๊ธฐ์— ๋Œ€์•ˆ์˜ (WIP) ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๋‹ค: https://github.com/request/request/issues/3143

๋‚ด๊ฐ€ ๊ธฐ์–ตํ•  ์ˆ˜์žˆ๋Š” ํ•œ ์š”์ฒญ์ด ๋‚ด ์ด๋™ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜€์Šต๋‹ˆ๋‹ค.
๋‚˜๋Š” ์ˆ˜๋…„ ๋™์•ˆ ์ด ์ž‘์—…์— ์Ÿ์€ ๋†€๋ผ์šด ์ž‘์—…์— ๋Œ€ํ•ด ์ €์ž์™€ ๊ธฐ์—ฌ์ž์—๊ฒŒ ๊ฐ์‚ฌํ•  ๋ฟ์ด๋ฉฐ ๋‹ค์Œ ๋ชจํ—˜์ด ์ด๋ฒˆ๋งŒํผ ํฅ๋ฏธ์ง„์ง„ํ•˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.
๊ฑด๋ฐฐ!

์ฒซ ๋ฒˆ์งธ ๊ณ ์ • ๋Œ“๊ธ€์—์„œ ๋Œ€์•ˆ์— ๋Œ€ํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š”, ์ €๋Š” ์ƒˆ๋กœ์šด ๊ฐ๋„ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค๋ ค๊ณ ํ•˜๋Š”๋ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
/ ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘...npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐ
npm WARN deprecated [email protected] : Chokidar 2๋Š” ๋…ธ๋“œ v14+์—์„œ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. ์ข…์†์„ฑ์ด 15๋ฐฐ ์ ์€ chokidar 3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค.
npm WARN deprecated [email protected] : fsevents 1์€ ๋…ธ๋“œ v14+์—์„œ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. ๋Œ€ํญ ๊ฐœ์„ ๋œ fsevents 2๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค.
npm WARN deprecated [email protected] : https://github.com/lydell/urix#deprecated๋ฅผ ์ฐธ์กฐ
npm WARN ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ [email protected] : https://github.com/lydell/resolve-url#deprecated
npm ์˜ค๋ฅ˜! '...":{"@angular/core":"5' ๊ทผ์ฒ˜์—์„œ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋™์•ˆ JSON ์ž…๋ ฅ์ด ์˜ˆ๊ธฐ์น˜ ์•Š๊ฒŒ ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\dell\AppData\Roamingnpm-cache_logs\2020-04-21T11_50_16_582Z-debug.log
ร— ํŒจํ‚ค์ง€ ์„ค์น˜์— ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
๋„์‹ ์›Œํฌํ”Œ๋กœ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
๋ˆ„๊ตฌ๋“ ์ง€ ์ด๊ฒƒ์œผ๋กœ ๋‚˜๋ฅผ ๋„์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š”, ์ €๋Š” ์ƒˆ๋กœ์šด ๊ฐ๋„ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค๋ ค๊ณ ํ•˜๋Š”๋ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
/ ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘...npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. #3142 ์ฐธ์กฐ
npm WARN deprecated [email protected] : Chokidar 2๋Š” ๋…ธ๋“œ v14+์—์„œ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. ์ข…์†์„ฑ์ด 15๋ฐฐ ์ ์€ chokidar 3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค.
npm WARN deprecated [email protected] : fsevents 1์€ ๋…ธ๋“œ v14+์—์„œ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. ๋Œ€ํญ ๊ฐœ์„ ๋œ fsevents 2๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค.
npm WARN deprecated [email protected] : https://github.com/lydell/urix#deprecated๋ฅผ ์ฐธ์กฐ
npm WARN ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ [email protected] : https://github.com/lydell/resolve-url#deprecated
npm ์˜ค๋ฅ˜! '...":{"@angular/core":"5' ๊ทผ์ฒ˜์—์„œ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋™์•ˆ JSON ์ž…๋ ฅ์ด ์˜ˆ๊ธฐ์น˜ ์•Š๊ฒŒ ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\dell\AppData\Roamingnpm-cache_logs\2020-04-21T11_50_16_582Z-debug.log
ร— ํŒจํ‚ค์ง€ ์„ค์น˜์— ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
๋„์‹ ์›Œํฌํ”Œ๋กœ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
๋ˆ„๊ตฌ๋“ ์ง€ ์ด๊ฒƒ์œผ๋กœ ๋‚˜๋ฅผ ๋„์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์ €๋„ ์š”

my-project/angular.json ์ƒ์„ฑ(3598๋ฐ”์ดํŠธ)
my-project/package.json ์ƒ์„ฑ(1286๋ฐ”์ดํŠธ)
CREATE my-project/README.md(1026๋ฐ”์ดํŠธ)
my-project/tsconfig.json ์ƒ์„ฑ(489๋ฐ”์ดํŠธ)
my-project/tslint.json ์ƒ์„ฑ(3125๋ฐ”์ดํŠธ)
my-project/.editorconfig ์ƒ์„ฑ(274๋ฐ”์ดํŠธ)
my-project/.gitignore ์ƒ์„ฑ(631๋ฐ”์ดํŠธ)
CREATE my-project/browserslist(429๋ฐ”์ดํŠธ)
my-project/karma.conf.js ์ƒ์„ฑ(1022๋ฐ”์ดํŠธ)
my-project/tsconfig.app.json ์ƒ์„ฑ(210๋ฐ”์ดํŠธ)
my-project/tsconfig.spec.json ์ƒ์„ฑ(270๋ฐ”์ดํŠธ)
my-project/src/favicon.ico ์ƒ์„ฑ(948๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/index.html(295๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/main.ts(372๋ฐ”์ดํŠธ)
my-project/src/polyfills.ts ์ƒ์„ฑ(2835๋ฐ”์ดํŠธ)
my-project/src/styles.css ์ƒ์„ฑ(80๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/test.ts(753๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/assets/.gitkeep(0๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/environments/environment.prod.ts(51๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/environments/environment.ts(662๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/app/app-routing.module.ts(246๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/app/app.module.ts(393๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/app/app.component.html(25757๋ฐ”์ดํŠธ)
my-project/src/app/app.component.spec.ts ์ƒ์„ฑ(1071๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/src/app/app.component.ts(214๋ฐ”์ดํŠธ)
my-project/src/app/app.component.css ์ƒ์„ฑ(0๋ฐ”์ดํŠธ)
my-project/e2e/protractor.conf.js ์ƒ์„ฑ(808๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/e2e/tsconfig.json(214๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/e2e/src/app.e2e-spec.ts(643๋ฐ”์ดํŠธ)
์ƒ์„ฑ my-project/e2e/src/app.po.ts(301๋ฐ”์ดํŠธ)
/ ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘...npm WARN deprecated [email protected] : TSLint๋Š” ESLint๋ฅผ ์œ„ํ•ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ https://github.com/palantir/tslint/issues/4534 ๋ฅผ ์ฐธ์กฐ
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm WARN deprecated [email protected] : ์ข…์†์„ฑ์ด 15๋ฐฐ ์ ์€ chokidar 3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค. Chokidar 2๋Š” ๋…ธ๋“œ v14์—์„œ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค.
npm WARN deprecated [email protected] : https://github.com/lydell/urix#deprecated๋ฅผ ์ฐธ์กฐ
npm WARN ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ [email protected] : https://github.com/lydell/resolve-url#deprecated
npm ์˜ค๋ฅ˜! '....0.1","systemjs":"^0.' ๊ทผ์ฒ˜์—์„œ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๋Š” ๋™์•ˆ ์˜ˆ๊ธฐ์น˜ ์•Š์€ JSON ์ž…๋ ฅ ์ข…๋ฃŒ

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\92306\AppData\Roamingnpm-cache_logs\2020-04-21T16_08_05_350Z-debug.log
ร— ํŒจํ‚ค์ง€ ์„ค์น˜์— ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
๋„์‹ ์›Œํฌํ”Œ๋กœ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.

@awais0048 @xunyegege ๊ท€ํ•˜์˜ ์˜ค๋ฅ˜๋Š” ์š”์ฒญ๊ณผ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ์ถœ๋ ฅ์„ ์—ฐ๊ตฌํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ •ํ™•ํ•˜๊ฒŒ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. Angular CLI์— ์ถ”๊ฐ€ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋ฌธ์ œ ์ถ”์ ๊ธฐ์— ๋ณด๊ณ ํ•˜์„ธ์š”.

@awais0048 @xunyegege ๊ท€ํ•˜์˜ ์˜ค๋ฅ˜๋Š” ์š”์ฒญ๊ณผ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ์ถœ๋ ฅ์„ ์—ฐ๊ตฌํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์ •ํ™•ํ•˜๊ฒŒ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. Angular CLI์— ์ถ”๊ฐ€ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋ฌธ์ œ ์ถ”์ ๊ธฐ์— ๋ณด๊ณ ํ•˜์„ธ์š”.

NPM๊ณผ ๋…ธ๋“œ๋ฅผ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ๋‹จ์„œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋ˆ„๊ตฌ๋“ ์ง€ ํ•ด๊ฒฐ์ฑ…์„ ์ฐพ์œผ๋ฉด ์•Œ๋ ค์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

@ANadjia ๋‹ค์‹œ, ์˜ค๋ฅ˜๋Š” ์ด ํŒจํ‚ค์ง€์™€ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค. Angular CLI์šฉ ํŠธ๋ž˜์ปค์— ๋ฌธ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”, ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘...npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 npm ERR์„ ์ฐธ์กฐ
๋‚ด๊ฐ€ ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ๋•Œ
๋ชจ๋“  ์ œ์•ˆ

@mohamedelsoufi ์ด๊ฒƒ์€ ์ด ํŒจํ‚ค์ง€๊ฐ€ ์•„๋‹ˆ๋ผ ํ™˜๊ฒฝ์ด๋‚˜ ํ”„๋กœ์ ํŠธ์˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. NPM์€ ์ด ํŒจํ‚ค์ง€๊ฐ€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ์„ ๊ฒฝ๊ณ ํ•ฉ๋‹ˆ๋‹ค.

@milette
์ „ ์„ธ๊ณ„ ํ”„๋กœ์ ํŠธ์˜ 99%์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒฐ๊ณผ๋ฅผ ์ƒ๊ธฐ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ์ด ์Šค๋ ˆ๋“œ๋ฅผ ๊ณ„์† ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

@anton-bot ์‹ค์ œ๋กœ ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด RTFM์„ ํ•˜์ง€ ์•Š๋Š”์ง€ ์ƒ๊ธฐ์‹œ์ผœ์ค๋‹ˆ๋‹ค.

@csvan ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋“ค์€ ๊ทธ๊ฒƒ์ด ๊ทธ๋“ค์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค.
์–ด์จŒ๋“  ๋‚˜๋Š” ๋งˆ์นจ๋‚ด ๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ•  ์ผ์„ ์–ป์—ˆ๋‹ค.
๊ทธ๋ž˜์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ :
1 / ๋…ธ๋“œ js ๋ฒ„์ „ 10.13.0 ์œผ๋กœ ๋‹ค์šด๊ทธ๋ ˆ์ด๋“œ ;
2 / npm_cache ํด๋”๋ฅผ ์ˆ˜๋™์œผ๋กœ ์‚ญ์ œํ–ˆ์Šต๋‹ˆ๋‹ค.
3 / npm install ์‹คํ–‰ ;
๊ทธ๋ฆฌ๊ณ  ๋งˆ๋ฒ•์œผ๋กœ ํšจ๊ณผ๊ฐ€ ์žˆ์—ˆ๋‹ค

@ANadjia ๋ฐ˜๊ฐ€์›Œ์š” !

์ œ์•ˆ๋œ ๊ต์ฒด๊ฐ€ ๋ถˆ๋ช…ํ™•ํ•ฉ๋‹ˆ๋‹ค. ๋Œ€์‹  ๋ฌด์—‡์„ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

@johnworthley ๋‹น์‹ ์„ ์œ„ํ•ด ๋ฌด์—‡์ด๋“  ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์— ์ œ์•ˆ๋œ ๋Œ€์•ˆ ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๋‹ค: https://github.com/request/request/issues/3143

@johnworthley ๋‹น์‹ ์„ ์œ„ํ•ด ๋ฌด์—‡์ด๋“  ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์— ์ œ์•ˆ๋œ ๋Œ€์•ˆ ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๋‹ค. #3143

ํ  ์ข‹์€ ๊ณณ https://www.youtube.com/watch?v=riuZHZPcZsg

๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋”๋ผ๋„ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? @mikeal ์—๊ฒŒ ์กฐ์–ธ์„

๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋”๋ผ๋„ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์กฐ์–ธ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค

@DokurOmkar ๋„ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์‚ฌ์šฉ์„ ๋ฐฉํ•ดํ•˜๋Š” ๊ฒƒ์€ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๋‹จ์ˆœํžˆ ๊ฒฝ๊ณ ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋” ๋‚˜์€ ์ตœ์‹  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์žˆ๋‹ค๋Š” ์ด์œ ๋กœ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ์Šค๋ ˆ๋“œ๋ฅผ ์ฝ์œผ๋ฉด ๋Œ€์ฒด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ชฉ๋ก์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ ๊ฐ๋„ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค
๋•Œ๋ฌธ์— ์‹คํŒจํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค -
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ

@adibhosale ๋” ๋งŽ์€ ์ •๋ณด๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์ฝ˜์†”์— ํ‘œ์‹œ๋˜๋Š” ๋‹ค๋ฅธ ๋ฉ”์‹œ์ง€๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

@adibhosale ์•„๋‹ˆ์š”, ๊ทธ ๋•Œ๋ฌธ์— ์‹คํŒจํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์ด ํŒจํ‚ค์ง€๊ฐ€ ์•„๋‹ˆ๋ผ angular-cli์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋จธ์ง€ ๋กœ๊ทธ ์ถœ๋ ฅ์„ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

@์•ˆํ†ค๋ด‡
๋‹ต์žฅ -> @adibhosale ๋” ๋งŽ์€ ์ •๋ณด๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ? ์ฝ˜์†”์— ํ‘œ์‹œ๋˜๋Š” ๋‹ค๋ฅธ ๋ฉ”์‹œ์ง€๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์ด๊ฒƒ์€ ์ƒˆ ๊ฐ๋„ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๋™์•ˆ ๋ฐœ์ƒํ•˜๋Š” ์˜ค๋ฅ˜์ž…๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€ ์„ค์น˜ ์ค‘...npm WARN deprecated [email protected] : TSLint๋Š” ESLint๋ฅผ ์œ„ํ•ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ https://github.com/palantir/tslint/issues/4534 ๋ฅผ ์ฐธ์กฐ
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm WARN deprecated [email protected] : Chokidar 2๋Š” ๋…ธ๋“œ v14+์—์„œ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. ์ข…์†์„ฑ์ด 15๋ฐฐ ์ ์€ chokidar 3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค.
npm WARN deprecated [email protected] : fsevents 1์€ ๋…ธ๋“œ v14+์—์„œ ์ค‘๋‹จ๋˜๋ฉฐ ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. fevents 2๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค.
npm WARN deprecated [email protected] : https://github.com/lydell/urix#deprecated๋ฅผ ์ฐธ์กฐ
npm WARN ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ [email protected] : https://github.com/lydell/resolve-url#deprecated
npm ์˜ค๋ฅ˜! cb()๋Š” ํ˜ธ์ถœ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค!

npm ์˜ค๋ฅ˜! ๋‹ค์Œ ์œ„์น˜์—์„œ ์ด ์˜ค๋ฅ˜๋ฅผ ๋ณด๊ณ ํ•˜์„ธ์š”.
npm ์˜ค๋ฅ˜! https://npm.community

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! C:\Users\adibh\AppData\Roamingnpm-cache_logs\2020-05-05T08_46_31_829Z-debug.log
ร— ํŒจํ‚ค์ง€ ์„ค์น˜์— ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.
๋„์‹ ์›Œํฌํ”Œ๋กœ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค. ์œ„ ์ฐธ์กฐ.

์™œ ๊ทธ๋ ‡๊ฒŒ ๋งŽ์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ด ๋ฌธ์ œ์™€ ์ „ํ˜€ ๊ด€๋ จ์ด ์—†๋Š” ์„ธ๋ถ€์ •๋ณด๋ฅผ ๋ณด๊ณ ํ•˜๋Š”์ง€ ํ˜ผ๋ž€์Šค๋Ÿฝ์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์— ์˜จ ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ๋ฌด์—‡์„ ํ•˜๊ณ  ์žˆ๋Š”์ง€ ์ „ํ˜€ ๋ชจ๋ฅด๊ณ , ์•„๋งˆ๋„ deprecated๋ผ๋Š” ๋‹จ์–ด๊ฐ€ ๋ฌด์—‡์„ ์˜๋ฏธํ•˜๋Š”์ง€ ์ดํ•ด์กฐ์ฐจ ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์—ฌ๊ธฐ์— ๊ฒŒ์‹œ๋œ ๋งˆ์ง€๋ง‰ ๋ฉ”์‹œ์ง€ ์—๋Š” ์‚ฌ์šฉ ์ค‘๋‹จ ๋ฉ”์‹œ์ง€๊ฐ€ ๋‘ ๊ฐœ ์ด์ƒ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋ณด๊ณ ๋ฅผ ์„ ํƒํ•˜๋Š” ์ด์œ ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์ผ๋ถ€ ์‚ฌ์šฉ์ž๋Š” ์ด๋ฏธ ํ–ˆ๊ณ  ๊ณ„์† ์ง„ํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์—?

ํŠน์ • ๋ฉ”์‹œ์ง€์˜ ๋งˆ์ง€๋ง‰ ๋น„ํŠธ๋Š” npm ๋ฒ„๊ทธ๊ฐ€ npm.community์— ๋ณด๊ณ ๋˜์–ด์•ผ ํ•œ๋‹ค๊ณ  ๊ตฌ์ฒด์ ์œผ๋กœ ์•Œ๋ ค์ค๋‹ˆ๋‹ค.

์—ฌ๊ธฐ ์œ ์ง€ ๊ด€๋ฆฌ์ž๋Š” ์ง€์› ์ค‘๋‹จ์„ ์š”์ฒญํ•˜๊ธฐ ์œ„ํ•ด ๊ด€๋ จ์ด ์—†๋Š” ๋ชจ๋“  ํ† ๋ก  ํ•ญ๋ชฉ์„ ์‚ญ์ œํ•˜๊ณ  ์—ฌ๊ธฐ์—์„œ ํ† ๋ก ์„ ์ž ๊ฐ€์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

lydell/urix ๋ฐ lydell/resolve-url ํŒจํ‚ค์ง€์™€ ๊ฐ™์ด ์š”์ฒญ ํŒจํ‚ค์ง€์˜ ์‚ฌ์šฉ ์ค‘๋‹จ ๋ฉ”์‹œ์ง€๋ฅผ ๋งํฌ๊ฐ€ ์•„๋‹Œ ๋ฌธ์ œ๋กœ ๋ณ€๊ฒฝํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ด€๋ จ ์—†๋Š” ๊ฒŒ์‹œ๋ฌผ์˜ ํ™์ˆ˜๊ฐ€ ์—ฌ๊ธฐ์— ๋‚˜ํƒ€๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@glensc ์ „ ์„ธ๊ณ„ ๊ฑฐ์˜ ๋ชจ๋“  JS ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ์˜๋„ํ•˜์ง€ ์•Š์€ ๊ฒฐ๊ณผ๋ฅผ ์ดˆ๋ž˜ํ•  ์ค„ ๋ˆ„๊ฐ€ ์•Œ์•˜

@glensc Angular/CLI ์„ค์น˜ ์‹œ ์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋งํฌ๊ฐ€ ์ œ๊ณต๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด ํŠน์ • ๋ฌธ์ œ์— ๋Œ€ํ•ด ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค.

๊ณ ๋ง™์Šต๋‹ˆ๋‹ค :-)

WARN์ด๋ผ๊ณ  ํ‘œ์‹œ๋˜๋ฉด ERR์ด ์•„๋‹˜์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๋ช‡ ๊ฐ€์ง€ ์‚ฌ์‹ค์ž…๋‹ˆ๋‹ค.

@adibhosale ์•„๋‹ˆ์š”, ๋™์ผํ•œ ๋กœ๊ทธ ์ถœ๋ ฅ์˜ ๋‹ค๋ฅธ ๋งŽ์€ ๋งํฌ ์ค‘์—์„œ ์ด github ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋งํฌ๊ฐ€ ์žˆ๋Š” NPM ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๊ฒฝ๊ณ ๋Š” ์‹คํŒจ์™€ ๊ด€๋ จ์ด ์—†์œผ๋ฏ€๋กœ ๋กœ๊ทธ๋ฅผ ๋” ์ฃผ์˜ ๊นŠ๊ฒŒ ์ฝ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ช…ํ™•ํ•˜๊ฒŒ ๋ช…์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

npm ERR! cb() never called!
npm ERR! This is an error with npm itself. Please report this error at:
npm ERR! https://npm.community

์ด๊ฒƒ์ด ์„ค์น˜๊ฐ€ ์‹คํŒจํ•˜๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค. ์ „ํ˜€ ๊ด€๋ จ์ด ์—†๋Š” ํŒจํ‚ค์ง€์˜ ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ ํ•˜๊ธฐ ์ „์— ์‹ค์‚ฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ์ด ๋ฌธ์ œ์˜ ์›์ธ์„ ํŒŒ์•…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@anton-bot ๊ณ„์† ๊ทธ๋ ‡๊ฒŒ ๋ง์”€ํ•˜์‹œ๋„ค์š”. ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ฑด์„ค์ ์ธ ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด ์—ฌ์ „ํžˆ ํŠธ๋กค๋ง์„ ํ•˜๋Ÿฌ ์™”์Šต๋‹ˆ๊นŒ?

@csvan @leoskyrocker @glensc ์‹œ์ž‘ํ•ด์„œ ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์•ž์œผ๋กœ ์‹ ๊ฒฝ์“ฐ๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ณ ๋ง™์Šต๋‹ˆ๋‹ค :-)

์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•
๊ฐ๋„ ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค
๋ฌธ์ œ

////////

deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm WARN checkPermissions /usr/local/lib/node_modules์— ๋Œ€ํ•œ ์“ฐ๊ธฐ ์•ก์„ธ์Šค ๊ถŒํ•œ์ด ์—†์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ EACCES
npm ์˜ค๋ฅ˜! ์‹œ์Šคํ…œ ํ˜ธ์ถœ ์•ก์„ธ์Šค
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ /usr/local/lib/node_modules
npm ์˜ค๋ฅ˜! ์˜ค๋ฅ˜ ๋ฒˆํ˜ธ -13
npm ์˜ค๋ฅ˜! ์˜ค๋ฅ˜: EACCES: ๊ถŒํ•œ ๊ฑฐ๋ถ€, '/usr/local/lib/node_modules' ์•ก์„ธ์Šค
npm ์˜ค๋ฅ˜! [์˜ค๋ฅ˜: EACCES: ๊ถŒํ•œ ๊ฑฐ๋ถ€, ์•ก์„ธ์Šค '/usr/local/lib/node_modules'] {
npm ์˜ค๋ฅ˜! ์˜ค๋ฅ˜ ๋ฒˆํ˜ธ: -13,
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ: 'EACCES',
npm ์˜ค๋ฅ˜! ์‹œ์Šคํ…œ ํ˜ธ์ถœ: '์•ก์„ธ์Šค',
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ: '/usr/local/lib/node_modules'
npm ์˜ค๋ฅ˜! }
npm ์˜ค๋ฅ˜!
npm ์˜ค๋ฅ˜! ์šด์˜ ์ฒด์ œ์—์„œ ์ž‘์—…์„ ๊ฑฐ๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! ํ˜„์žฌ ์‚ฌ์šฉ์ž๋กœ ์ด ํŒŒ์ผ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๊ถŒํ•œ์ด ์—†์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜!
npm ์˜ค๋ฅ˜! ๊ถŒํ•œ ๋ฌธ์ œ์ผ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋ฉด ๋‹ค์‹œ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! ํŒŒ์ผ ๋ฐ ํฌํ•จ ๋””๋ ‰ํ† ๋ฆฌ์˜ ๊ถŒํ•œ ๋˜๋Š” ์‹คํ–‰์„ ์‹œ๋„ํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! root/Administrator๋กœ ๋‹ค์‹œ ๋ช…๋ นํ•˜์‹ญ์‹œ์˜ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! /Users/vivek/.npm/_logs/2020-05-05T11_48_34_569Z-debug.log

@vivek08011991 ๋กœ๊ทธ ์ถœ๋ ฅ์€ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•  ์ž‘์—…์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ sudo ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์ „์—ญ์ ์œผ๋กœ angular๋ฅผ ์„ค์น˜ํ•˜๋ ค๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ด ํŒจํ‚ค์ง€์™€ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค.

์ด๋ด, ์ด๊ฑด ํ—›์†Œ๋ฆฌ์•ผ, ์‹ ๊ฒฝ ์“ฐ์ง€๋งˆ
๋‚˜๋Š” ๋‹น์‹ ์—๊ฒŒ ํ•ด๊ฒฐ์ฑ…์„ ๋งํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค
๋‚˜๋Š” 3 ์ผ ์‹œ๋„ํ•˜๊ณ  ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์–ป์—ˆ๋‹ค
์ฒซ ๋ฒˆ์งธ: npm ์„ค์น˜ npm
seconde: npm ์ œ๊ฑฐ --save react-native-cli
๋งˆ์ง€๋ง‰์œผ๋กœ: npm install -g @angular/cli

์ด๋ด, ์ด๊ฑด ํ—›์†Œ๋ฆฌ์•ผ, ์‹ ๊ฒฝ ์“ฐ์ง€๋งˆ
๋‚˜๋Š” ๋‹น์‹ ์—๊ฒŒ ํ•ด๊ฒฐ์ฑ…์„ ๋งํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค
๋‚˜๋Š” 3 ์ผ ์‹œ๋„ํ•˜๊ณ  ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์–ป์—ˆ๋‹ค
์ฒซ ๋ฒˆ์งธ: npm ์„ค์น˜ npm
seconde: npm ์ œ๊ฑฐ --save react-native-cli
๋งˆ์ง€๋ง‰์œผ๋กœ: npm install -g @angular/cli

๋‹น์‹ ์ด ์˜ณ์•˜๋‹ค ์•Œํ•จ๋‘ ๋ฆด ์•Œ๋ผ. ์™œ react cli๊ฐ€ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š”๊ฐ€? ๊ฑฐ๊ธฐ์— ์ถ”์•…ํ•œ ๊ฒฝ์Ÿ ๊ด€ํ–‰์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๊ณ ๋งˆ์›Œ ์นœ๊ตฌ

์ด๊ฒƒ์€ request ๋ชจ๋“ˆ ์ด์Šˆ ํŠธ๋ž˜์ปค์ด์ง€ angular ์•„๋‹ˆ๋ผ๋Š” ์ ์— ์ฃผ์˜ํ•˜์‹ญ์‹œ์˜ค.

๋ˆ„๊ตฐ๊ฐ€ request ๋Œ€ํ•œ ๋Œ€์•ˆ์„ ๋งํ•ด ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚˜๋Š” ์ด๊ฒƒ์„ ์ฝ๊ณ  ์žˆ์œผ๋ฉฐ request ์˜ ๋‹จ์ˆœํ•œ API๋ฅผ ํ›จ์”ฌ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค.

https://www.twilio.com/blog/2017/08/http-requests-in-node-js.html

@dolanmiu ๋ฌผ๋ก ์ž…๋‹ˆ๋‹ค. ๋ฐฉ๊ธˆ ๊ฒŒ์‹œํ•œ ์Šค๋ ˆ๋“œ๋ฅผ ์ฝ์€ ์‚ฌ๋žŒ(๋˜๋Š” _alternative_ ๊ฒ€์ƒ‰ํ•œ ์‚ฌ๋žŒ)์€ https://github.com/request/request/issues/3143 ์— ๋Œ€์•ˆ ๋ชฉ๋ก์ด ์žˆ๋‹ค๊ณ  ๋งํ•  ์ˆ˜

@dolanmiu @root/request๋Š” ๋Œ€๋ถ€๋ถ„ ๋“œ๋กญ์ธ ๊ต์ฒด์ž…๋‹ˆ๋‹ค.

@Richienb ๋Š” postman-request(๋˜ํ•œ ๋“œ๋กญ์ธ ๊ต์ฒด)์™€ @root/request ์ค‘ ์–ด๋Š ๊ฒƒ์ด ๋” ๋‚ซ์Šต๋‹ˆ๊นŒ? postman-request์—๋Š” ๋ฌธ์ œ์ธ TypeScript ํƒ€์ดํ•‘์ด ์—†์Šต๋‹ˆ๋‹ค.

@anton-bot ํ™•์‹คํžˆ @root/request.

๋‚˜๋Š” ์ž ์‹œ ๋™์•ˆ request ๋ฅผ ์‚ฌ์šฉํ•ด ์™”์œผ๋ฉฐ Mikeal์— ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ๋…ธ๋“œ์˜ ๊ธฐ๋ณธ ๋ชจ๋“ˆ์— ๋งž๊ฒŒ ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๊ฐœ๋ฐœ ๋œ์ด request ๋ชจ๋“ˆ์˜ ์ƒˆ ๋ฒ„์ „ ๋•Œ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋‹ค๋ฅธ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜๊ธฐ ๋‹ค๋งŒ ์–ด๋–ค ์ด์œ ๊ฐ€ ์•„๋‹ˆ๋ผ๊ณ  request ์™”๋‹ค ๋ฐ–.

request ๋Š” ์—ญ์‚ฌ์˜ ๋Œ์— ์˜์›ํžˆ ๊ธฐ๋ก๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. node ์ด(๊ฐ€) ์„ฑ์žฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ ์šฐ๋ฆฌ๊ฐ€ ๋ช‡ ๊ฐ€์ง€๋ฅผ ๋‚ด๋ ค๋†“์•„์•ผ ํ•  ๋•Œ์ž…๋‹ˆ๋‹ค. request ๋Š” ํ•ญ์ƒ ํ˜์‹ ์ ์ธ ๊ธฐ๋Šฅ์˜ ์„ ๊ตฌ์ž์˜€์œผ๋ฉฐ request ๊ฐ€ ์—†์—ˆ๋‹ค๋ฉด ๋…ธ๋“œ ๊ฐœ๋ฐœ์ด ๊ทธ๋ ‡๊ฒŒ ํ›Œ๋ฅญํ•˜์ง€ ์•Š์•˜์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์ Š์€ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋กœ์„œ ๋‚˜๋Š” ์ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ–ˆ์ง€๋งŒ, ๋” ๋‚˜์€ ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ์„ ํ•˜๊ณ  ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋” ์ด์ƒ ๊ณผ๊ฑฐ์— ์—ฐ์—ฐํ•ด์„œ๋Š” ์•ˆ ๋œ๋‹ค๋Š” ๊ฒƒ๋„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ Š์€ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋กœ์„œ ๋‚˜๋Š” ์ด ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์€ ๋‚˜๋ฅผ ์›ƒ๊ฒŒ ํ–ˆ๋‹ค. ์ €๋Š” ์ Š์€ ํ”„๋กœ๊ทธ๋ž˜๋จธ๋กœ์„œ Commodore BASIC์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. : ์Šค๋งˆ์ผ :

@๋‹คํฌ๋ผ์ฆˆ๋ฒ ๋ฆฌ :

  1. ์˜ค๋ฅ˜ ๋ณด๊ณ ์„œ๋ฅผ ๋๊นŒ์ง€ ์ฝ์œผ์‹ญ์‹œ์˜ค. ์ฒซ ๋ฒˆ์งธ ์ค„๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์˜ค๋ฅ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€ ๋ช…ํ™•ํ•˜๊ฒŒ ์ž‘์„ฑ๋˜์–ด ์žˆ๊ณ  ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š”์ง€ ์ œ์•ˆ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ๋ถ„๋ช…ํžˆ ์ฒซ ๋ฒˆ์งธ ์ค„์„ ์ฝ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
  2. ๋‹น์‹ ์€ ๋‹น์‹ ์˜ ์˜ค๋ฅ˜๋ฅผ ๊ตฌ๊ธ€ ํ–ˆ์Šต๋‹ˆ๊นŒ?
  3. ์ด์ „ ํ† ๋ก ์„ ์ฝ๊ณ  ์ด๊ฒƒ์„ ์—ฌ๊ธฐ์— ๊ฒŒ์‹œํ•˜๋Š” ์ด์œ ๋ฅผ ์„ค๋ช…ํ•˜์‹ญ์‹œ์˜ค. ๋ฌธ์ œ ๋ณด๊ณ ์„œ๋Š” ์š”์ฒญ ๋ชจ๋“ˆ๊ณผ ์•„๋ฌด ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค.

๋ฐ”์ด๋Ÿฌ์Šค ๋ฐฑ์‹ ์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ณ ๋ง™์Šต๋‹ˆ๋‹ค !!!

@glensc ๋‹ค๋ฅธ ๋ฒ„์ „์˜ ๋…ธ๋“œ๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด ํ„ฐ๋ฏธ๋„์„ ์™„์ „ํžˆ ๋‹ค์‹œ ์„ค์น˜ํ•œ ๋‹ค์Œ "sudo"๋ฅผ ์‹œ๋„ํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ํšจ๊ณผ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
๋‚ด PPA์— ๋…ธ๋“œ js๋ฅผ ์ถ”๊ฐ€ํ•˜๊ธฐ ์œ„ํ•ด curl์„ ์‚ฌ์šฉํ•˜์—ฌ nodejs์˜ ๋…ธ๋“œ ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์—์„œ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.
dark<strong i="10">@darkRaspberry</strong>:~$ sudo npm install firebase-tools -g

npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
/usr/bin/firebase -> /usr/lib/node_modules/firebase-tools/lib/bin/firebase.js
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.1.2 (node_modules/firebase-tools/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

+ [email protected]
updated 2 packages in 42.696s

์ด๊ฒƒ์€ ๋‚˜๋ฅผ ๊ฐ์ •์ ์œผ๋กœ ๋งŒ๋“ค์—ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  :bow: ๋ชจ๋“  ๊ธฐ์—ฌ์ž์—๊ฒŒ!

image

@sudarsan2017 ๊ทธ ์˜ค๋ฅ˜๋Š” ์–ด๋–ค ์‹์œผ๋กœ๋“  request ์™€ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค

์•ˆ๋…•ํ•˜์„ธ์š”! ์‚ฌ๋žŒ๋“ค์€ Windows์—์„œ ๋™์ผํ•œ ๋ฌธ์ œ๋ฅผ ๊ฒช๊ณ  ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.

npm install [email protected]

๋‚˜๋Š” ๋‹น์‹ ์ด ์˜ณ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

npm ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142

์–ด๋–ป๊ฒŒ ์ˆ˜์ •ํ•ฉ๋‹ˆ๊นŒ?

@aman78600 ๊ณ ์น  ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค.

npm ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142

@aman78600 ์ˆ˜์ •ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. request has been deprecated ๋ผ๋Š” ๊ฒฝ๊ณ ์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.

๋‹น์‹ ์˜ NPM์€ ๋Œ€์•ˆ์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์—ฌ๊ธฐ๋กœ ์˜ค๋ผ๊ณ  ํ•˜์ง€๋งŒ ๋‚˜๋Š” ๊ทธ๊ฒƒ๋“ค์„ ๋ณด์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

๋‹น์‹ ์˜ NPM์€ ๋Œ€์•ˆ์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์—ฌ๊ธฐ๋กœ ์˜ค๋ผ๊ณ  ํ•˜์ง€๋งŒ ๋‚˜๋Š” ๊ทธ๊ฒƒ๋“ค์„ ๋ณด์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

@skeddles Control-F๋ฅผ ๋ˆ„๋ฅด๊ณ  alternatives ๋ฅผ ๊ฒ€์ƒ‰ํ–ˆ๋‹ค๋ฉด https://github.com/request/request/issues/3143์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ์ฐพ์•˜์„ ๊ฒƒ

์ด ๋ช…๋ น์—์„œ vue-cli๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. npm install -g @vue/cli show ๋ฉ”์‹œ์ง€: npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

@somnangrom ์ด๊ฒƒ์€ ์‚ฌ์‹ค์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ฝ˜์†”์— ์ด ํ•œ ์ค„๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๋ฉ”์‹œ์ง€๊ฐ€ ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

์ด ํŒจํ‚ค์ง€๋ฅผ ์ž‘์—…ํ•ด์ฃผ์…”์„œ ์ •๋ง ๊ฐ์‚ฌํ•˜๋‹ค๋Š” ๋ง์”€์„ ๋“œ๋ฆฌ๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ์ œ ํ”„๋กœ์ ํŠธ์— ๋งŽ์€ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ง€์›์ด ์ค‘๋‹จ๋œ ์™„์ „ํžˆ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์ด์œ .

๋ฉ‹์ง„ ์ผ์„ ํ•˜์…จ์Šต๋‹ˆ๋‹ค. ์Šค์Šค๋กœ๋ฅผ ์ž๋ž‘์Šค๋Ÿฝ๊ฒŒ ์—ฌ๊ฒจ์•ผ ํ•ฉ๋‹ˆ๋‹ค!

๐Ÿค

์ตœ์‹  ๋ฒ„์ „์˜ Angular CLI๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
Nodejs 64๋น„ํŠธ ๋ฒ„์ „: 12.18.1
npm ๋ฒ„์ „: 6.13.6
์ตœ์‹  ๋ฒ„์ „์˜ Angular CLI๋ฅผ ์„ค์น˜ํ•˜๊ธฐ ์œ„ํ•ด npm install -g @angular/ cli@latest ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋‹ค์Œ ์˜ค๋ฅ˜ ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ

์„ค์น˜๊ฐ€ ๋‹ค์Œ ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ๋ฉˆ์ถค: postinstall: sill install executeActions
์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ฃผ์„ธ์š”.

์ตœ์‹  ๋ฒ„์ „์˜ Angular CLI๋ฅผ ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
Windows 10 Pro ๋…ธํŠธ๋ถ์— Nodejs๋ฅผ ์„ค์น˜ํ–ˆ์Šต๋‹ˆ๋‹ค.
Nodejs 64๋น„ํŠธ ๋ฒ„์ „: 12.18.1npm ๋ฒ„์ „: 6.13.6
์ตœ์‹  ๋ฒ„์ „์˜ Angular CLI๋ฅผ ์„ค์น˜ํ•˜๊ธฐ ์œ„ํ•ด npm install -g @angular/ cli@latest ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋‹ค์Œ ์˜ค๋ฅ˜ ๊ฒฝ๊ณ ๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. #3142 ์ฐธ์กฐ

์„ค์น˜๊ฐ€ ๋‹ค์Œ ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ๋ฉˆ์ถค: postinstall: sill install executeActions
์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ฃผ์„ธ์š”.

@anjaikr ๋ฐ @aman78600 ์€ https://github.com/angular/angular-cli/wiki/stories-1.0-update ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ์ตœ์‹  ๋ฒ„์ „์„ ์„ค์น˜ํ•˜๋Š” ๊ฒƒ์ด ๋„์›€์ด ๋˜๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

npm install -g json-server๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?

์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ๊ธฐ๋ณธ ์ž‘์—…์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Angular 5๋ฅผ ์„ค์น˜ํ•˜๋Š” ๋™์•ˆ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์„ค์น˜๋ฅผ ์‹œ๋„ํ–ˆ์ง€๋งŒ ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”?

@mikeal ๋ช…ํ™•ํžˆ bent ์ด request ๋ฅผ ๋Œ€์ฒดํ•  ์˜ํ–ฅ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์•ˆ๋…•ํ•˜์‹ญ๋‹ˆ๊นŒ,

๋ˆ„๊ตฐ๊ฐ€ ๋ฌธ์ œ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
npm i -g json ์„œ๋ฒ„
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm WARN ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ [email protected] : ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋” ์ด์ƒ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ณ ๋งˆ์›Œ.

๊ฐ๊ฐ€ ์ƒ๊ฐ์— ๋Œ€ํ•ด ๋“ค์—ˆ๋˜ ๊ฐ€์žฅ ๋ฉ์ฒญํ•œ ์ด์œ  ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. Google๊ณผ Microsoft๊ฐ€ "์œ ์‚ฌํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ƒˆ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ฑ„ํƒํ•˜๊ธฐ๊ฐ€ ํ›จ์”ฌ ๋” ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์—" ๊ทธ๋ฆฌ๊ณ  "์ง€๊ธˆ ์ƒํƒœ๊ณ„์—์„œ ์ด๋Ÿฌํ•œ ํŒจํ„ด์œผ๋กœ์˜ ์ „ํ™˜์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๊ธฐ" ๋•Œ๋ฌธ์— ๋ชจ๋“  ์ œํ’ˆ์„ ์„ ๋ฐ˜์— ๋„ฃ์—ˆ๋‹ค๊ณ  ์ƒ์ƒํ•ด ๋ณด์„ธ์š”. ์™„์ „ ์›ƒ๊ธฐ๋„ค์š”.

image

๋จผ์ € ์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋Œ€ํ•œ ์กด๊ฒฝ์‹ฌ์„ ํ‘œํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์†”์งํžˆ ๋งํ•ด์„œ

@Wenjie-Shao ์•„๋ฌด ์˜๋ฏธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ ์ค‘๋‹จ ํ†ต์ง€๊ฐ€ ์—†๋‹ค๋ฉด ํ›จ์”ฌ ๋” ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๊ตฌ์‹์ด๋ผ๋Š” ์‚ฌ์‹ค์„ ๊นจ๋‹ซ์ง€ ๋ชปํ•œ ์ฑ„ ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ ์‚ฌ์šฉํ•˜๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. @mikeal ์€ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ฉ๊ฒŒ ๋‘๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๊ณต์‹์ ์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ์œผ๋กœ์จ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ํ›Œ๋ฅญํ•œ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์Šค๋ ˆ๋“œ์— ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐ ์‹ค์ˆ˜๊ฐ€ ์žˆ์—ˆ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚œ ๊ทธ๋ƒฅ ์„œ์ง€.sh ์„ค์ •์— ๋Œ€ํ•œ ํŠœํ† ๋ฆฌ์–ผ์„ ํ†ตํ•ด ๋‚ด ๊ธธ์„ ๋”๋“ฌ์–ด ๋ณด๋ ค๊ณ  ํ•ด์š”.

์—ฌ๊ธฐ์—์„œ ๋งŽ์€ ์ผ์ด ์žˆ์—ˆ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๊ฒฝ๊ณ ๋ฅผ ๋ฌด์‹œํ•˜๊ณ  ๋– ๋‚˜๋ฉด ์ƒˆ๋กœ์šด ๋ฏธ๋ž˜์— ์—ฌ๊ธฐ์—์„œ ๋‚˜๋ฅผ ๋ง์น  ๊ฒƒ์ž…๋‹ˆ๊นŒ?

๊ฐ๊ฐ€ ์ƒ๊ฐ์— ๋Œ€ํ•ด ๋“ค์—ˆ๋˜ ๊ฐ€์žฅ ๋ฉ์ฒญํ•œ ์ด์œ  ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. Google๊ณผ Microsoft๊ฐ€ "์œ ์‚ฌํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ƒˆ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ฑ„ํƒํ•˜๊ธฐ๊ฐ€ ํ›จ์”ฌ ๋” ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์—" ๊ทธ๋ฆฌ๊ณ  "์ง€๊ธˆ ์ƒํƒœ๊ณ„์—์„œ ์ด๋Ÿฌํ•œ ํŒจํ„ด์œผ๋กœ์˜ ์ „ํ™˜์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๊ธฐ" ๋•Œ๋ฌธ์— ๋ชจ๋“  ์ œํ’ˆ์„ ์„ ๋ฐ˜์— ๋„ฃ์—ˆ๋‹ค๊ณ  ์ƒ์ƒํ•ด ๋ณด์„ธ์š”. ์™„์ „ ์›ƒ๊ธฐ๋„ค์š”.

ํ•˜์ง€๋งŒ ๊ทธ๋“ค์€ ํ•ด๋ƒˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ž์ฃผ. ๋” ์ด์ƒ ์กด์žฌํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ํ˜„์žฌ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ฐ›์ง€ ๋ชปํ•˜๋Š” ์ด๋Ÿฌํ•œ ๊ฑฐ๋Œ€ ์†Œํ”„ํŠธ์›จ์–ด ์ œํ’ˆ์ด ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค. Windows 95 ๋˜๋Š” FoxPro์— ๋Œ€ํ•ด ๋“ค์–ด๋ณธ ์ ์ด ์žˆ์Šต๋‹ˆ๊นŒ? ๋ชจ๋“  ์†Œํ”„ํŠธ์›จ์–ด ํ”„๋กœ์ ํŠธ๋Š” ๊ฒฐ๊ตญ ์ด๋Ÿฐ์ €๋Ÿฐ ์ด์œ ๋กœ ์ข…๋ฃŒ๋˜๊ณ  ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Request์˜ ์ž‘์„ฑ์ž๋„ ์„ ๋ฐ˜์—์„œ ๊บผ๋‚ด์ง€ ์•Š๊ณ  ์ƒˆ๋กœ์šด ๊ฐœ๋ฐœ์„ ์ค‘๋‹จํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ค‘์š”ํ•œ ๋ฒ„๊ทธ ์ˆ˜์ •์€ ์ž ์‹œ ๋™์•ˆ ๊ณ„์† ๋ฐœ์ƒํ•˜๋ฉฐ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ด์— ์˜์กดํ•˜๋Š” ๊ฒฝ์šฐ ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•˜๋ฉด ๋” ์ข‹๊ณ  ํ˜„๋Œ€์ ์ธ ๋Œ€์•ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์–ธ์–ด๋Š” ์ง„ํ™”ํ–ˆ๊ณ  ์ง€๊ธˆ์€ ๊ฐ™์€ ์ผ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๋” ๋‚˜์€ ๋ฐฉ๋ฒ•์ด ์žˆ์ง€๋งŒ Request๋Š” ๋ ˆ๊ฑฐ์‹œ ํ”„๋กœ์ ํŠธ๊ฐ€ ํ•จ๊ป˜ ์ž‘๋™ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ๋”ฐ๋ผ๊ฐˆ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ์˜ ๊ฒฝ์šฐ ์ฐจ์„ ์ฑ…์ž…๋‹ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์ด ๊ฒฐ์ •์€ ๋‚˜์—๊ฒŒ ์™„์ „ํžˆ ์˜๋ฏธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ ˆ๊ฑฐ์‹œ ํ”„๋กœ์ ํŠธ์—์„œ ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์š”์ฒญ์„ ๊ทธ๋Œ€๋กœ ๋‘์ง€๋งŒ ์ƒˆ ํ”„๋กœ์ ํŠธ์˜ ๊ฒฝ์šฐ ์ƒˆ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

๋ˆ„๊ตฐ๊ฐ€๊ฐ€ axios๋ฅผ ํ†ตํ•ด ์š”์ฒญ์„ ์‚ฌ์šฉํ•˜๋Š” ํŠน๋ณ„ํ•œ ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

๋ˆ„๊ตฐ๊ฐ€๊ฐ€ axios๋ฅผ ํ†ตํ•ด ์š”์ฒญ์„ ์‚ฌ์šฉํ•˜๋Š” ํŠน๋ณ„ํ•œ ์ด์œ ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

ํ™•์‹ ํ•˜๋Š”. ๋‚ด ๋จธ๋ฆฌ ๊ผญ๋Œ€๊ธฐ์—์„œ :

  • ๋‹น์‹ ์€ ๊ทธ๊ฒƒ์— ์ต์ˆ™ํ•˜๊ฑฐ๋‚˜ ๋งŽ์€ ๊ฒฝํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋‹น์‹ ์˜ ํ”„๋กœ์ ํŠธ๋Š” ์ด๋ฏธ ๊ทธ๊ฒƒ์„ ๋ชจ๋“  ๊ณณ์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๋ฐ ๋ช‡ ๋‹ฌ์ด ์•„๋‹ˆ๋ผ ๋ช‡ ์ฃผ๊ฐ€ ๊ฑธ๋ฆด ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • ํšŒ์‚ฌ/ํ”„๋กœ์ ํŠธ ์ฝ”๋”ฉ ์ง€์นจ์€ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์š”๊ตฌํ•ฉ๋‹ˆ๋‹ค(๋˜๋Š” ํŠน์ • "์„ฑ์ˆ™๋„" ์š”๊ตฌ ์‚ฌํ•ญ์ด ์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋งŒ ํ—ˆ์šฉ).
  • ํƒ€์‚ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค(์•„๋งˆ๋„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์ž‘์—…ํ•  ๋•Œ ์‚ฌ์šฉํ•ด์•ผ ํ•  ์ˆ˜๋„ ์žˆ์Œ). ๋„์„œ๊ด€์— ๋Œ€์•ˆ์ด ์—†๋Š” ๊ฒฝ์šฐ ์ถ”๊ฐ€ ์ ์ˆ˜.
  • ๋‹น์‹ ์€ ํ•™์ƒ์ด๊ณ  ๋‹น์‹ ์ด ์ˆ˜๊ฐ•ํ•˜๋Š” ๊ณผ์ •์€ ์š”์ฒญ์— ๋Œ€ํ•ด ๋ช…์‹œ์ ์œผ๋กœ ๊ฐ€๋ฅด์น˜๊ณ  ์‹œํ—˜/์ˆ™์ œ์— ์žˆ์Šต๋‹ˆ๋‹ค.

๋ณธ์งˆ์ ์œผ๋กœ ์ด๋“ค์€ ๋ชจ๋‘ ๋™์ผํ•œ ํ…Œ๋งˆ์˜ ๋ณ€ํ˜•์ž…๋‹ˆ๋‹ค. ์•„์ง ์ตœ์‹  ํŠธ๋ Œ๋“œ๋ฅผ ๋”ฐ๋ผ์žก์ง€ ๋ชปํ•œ ์ผ๋ถ€ ๋ ˆ๊ฑฐ์‹œ ํ•ญ๋ชฉ์œผ๋กœ ์ž‘์—…ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์‹ค์ƒํ™œ์—์„œ ๊ฝค ๊ทœ์น™์ ์œผ๋กœ ์ผ์–ด๋‚˜๋Š” ๊ฒฝํ–ฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ
npm WARN deprecated @ hapi / 15.1.1 : joi๊ฐ€ @hapi ์กฐ์ง์„ ๋– ๋‚˜ '
npm WARN deprecated @ hapi /
npm WARN deprecated @hapi/ [email protected] : ์ด ๋ฒ„์ „์€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์œผ๋ฉฐ ๋” ์ด์ƒ ์ง€์›๋˜๊ฑฐ๋‚˜ ์œ ์ง€ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
npm WARN deprecated @ hapi /
npm WARN deprecated @ hapi /
npm WARN ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ [email protected] : ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋” ์ด์ƒ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
npm WARN deprecated [email protected] : https://github.com/lydell/urix#deprecated๋ฅผ ์ฐธ์กฐ
npm WARN ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ [email protected] : https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated [email protected] : Chokidar 2๋Š” ๋…ธ๋“œ v14+์—์„œ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. ์ข…์†์„ฑ์ด 15๋ฐฐ ์ ์€ chokidar 3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜์‹ญ์‹œ์˜ค.
npm WARN deprecated [email protected] : fsevents 1์€ ๋…ธ๋“œ v14+์—์„œ ์ค‘๋‹จ๋˜๋ฉฐ ์•ˆ์ „ํ•˜์ง€ ์•Š์€ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. fevents 2๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•ฉ๋‹ˆ๋‹ค.

์™œ???? ๋‚ด ๋ชจ๋“  NPM ๊ธ€๋กœ๋ฒŒ ์„ค์น˜๋Š” ํ•ญ์ƒ ๊ทธ๊ฒƒ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ๊ฒฝ๊ณ ํ•ฉ๋‹ˆ๋‹ค?? ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•

NODEJS๋ฅผ ์ œ๊ฑฐํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
๋˜๋Š”
NPM ์—…๋ฐ์ดํŠธ ์ค‘
ํ•˜์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค
๋„์™€์ฃผ์„ธ์š”

๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๋‹น์‹ ์€ ์ด๊ฒƒ์„ ๊ณ ์น  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
๊ฒฝ๊ณ ๋ฅผ ๋ฌด์‹œํ•˜์‹ญ์‹œ์˜ค.

๋˜๋Š” ์š”์ฒญ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑํ•˜์‹ญ์‹œ์˜ค.

@acatzk

๋…ธ๋ ฅํ•˜๋‹ค

npm install -s (๋˜๋Š” --silent)
๋˜๋Š”

npm install -q (๋˜๋Š” --quiet)

๊ฒฝ๊ณ ๋ฅผ ์นจ๋ฌต์‹œํ‚ค๋‹ค

์ด ์Šค๋ ˆ๋“œ๊ฐ€ ์ตœ๊ณ ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š”. ์ €๋Š” API๋ฅผ ์ฒ˜์Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์š”์ฒญ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ๋Š”๋ฐ ์ด์ œ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์ฐพ์•„๋ณด๊ณ  ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ๋ณด๋ ค๊ณ ํ–ˆ์ง€๋งŒ ๋ˆ„๊ตฐ๊ฐ€ ๋‚ด๊ฐ€ ์ง€๊ธˆ ๋ฌด์—‡์„ ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์„ค๋ช… ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์š”์ฒญ ํŒจํ‚ค์ง€๋ฅผ ๋” ์ด์ƒ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ? ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋‹ค๋ฅธ ํŒจํ‚ค์ง€๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

@mohammed3736 ์•„๋‹ˆ์š”, ๊ณ„์† ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ด ์ œ๊ณต๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ž ์‹œ ๋™์•ˆ ๋ช‡ ๊ฐ€์ง€ ๋ฒ„๊ทธ ์ˆ˜์ •์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์ง€๋งŒ ์˜ค๋ž˜ ์ง€์†๋˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฒฝ๊ณ ๋Š” ํ•ญ์ƒ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ณธ์งˆ์ ์œผ๋กœ ๊ทธ๋“ค์€ ํ”„๋กœ์ ํŠธ๋ฅผ ํฌ๊ธฐํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณ€๊ฒฝํ•˜๋ ค๋Š” ๊ฒฝ์šฐ ์ง์ ‘ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ - ์š”์ฒญ์— ๋Œ€ํ•œ ๋ชจ๋“  ์†Œ์Šค ์ฝ”๋“œ๋Š” ์—ฌ์ „ํžˆ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์‹ ๋งŒ์˜ ํฌํฌ๋ฅผ ๋งŒ๋“ค๊ณ  ๊ทธ๊ฒƒ์œผ๋กœ ๋ฌด์—‡์ด๋“  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ๋” ํ˜„๋Œ€์ ์ธ ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์šฐ๋ฆฌ๋Š” Axios๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๋‹ค๋ฅธ ๊ฒƒ๋„ ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

์ด์ œ ์ธํ„ฐ๋ทฐ์—์„œ Fizzbuzz ๋Œ€์‹  ๋‹ค์Œ ์งˆ๋ฌธ์„ ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

You have faced the following message in your console.

What should you do about it and how do you fix it?

> npm WARN deprecated [email protected]: request has been deprecated, see #3142

@anton-bot ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ๋‹ต์€ "๋งํฌ๋ฅผ ํด๋ฆญํ•˜๊ณ  ์•„๋ฌด ๊ฒƒ๋„ ์ฝ์ง€ ์•Š๊ณ  ์Šค๋ ˆ๋“œ์˜ ๋งจ ์•„๋ž˜๋กœ ์ด๋™ํ•˜์—ฌ ๋‹ค๋ฅธ ๋ชจ๋“  ์‚ฌ๋žŒ๊ณผ ๋™์ผํ•œ ์งˆ๋ฌธ์„ ๊ฒŒ์‹œํ•ฉ๋‹ˆ๋‹ค."์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ผ์ž๋ฆฌ๋ฅผ ์–ป์Šต๋‹ˆ๊นŒ?

@anton-bot ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ๋‹ต์€ "๋งํฌ๋ฅผ ํด๋ฆญํ•˜๊ณ  ์•„๋ฌด ๊ฒƒ๋„ ์ฝ์ง€ ์•Š๊ณ  ์Šค๋ ˆ๋“œ์˜ ๋งจ ์•„๋ž˜๋กœ ์ด๋™ํ•˜์—ฌ ๋‹ค๋ฅธ ๋ชจ๋“  ์‚ฌ๋žŒ๊ณผ ๋™์ผํ•œ ์งˆ๋ฌธ์„ ๊ฒŒ์‹œํ•ฉ๋‹ˆ๋‹ค."์ž…๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ผ์ž๋ฆฌ๋ฅผ ์–ป์Šต๋‹ˆ๊นŒ?

๋‚ด๊ฐ€ ๋ฌป๋Š” ์ด์œ ๋Š” ๋‚ด ์ฝ˜์†” ๋กœ๊ทธ์— 401์ด ๊ณ„์† ํ‘œ์‹œ๋˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์š”์ฒญ ๋ชจ๋“ˆ์ด ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. bitcoinaverage ๋ฐ https://any-api.com/ ์˜ API๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ ๊ทธ ์ค‘ ์•„๋ฌด ๊ฒƒ๋„ ์ž‘๋™ํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. localhost3000์— ๋“ค์–ด๊ฐ€๋ฉด html์ด ์ž‘๋™ํ•˜๊ณ  ํŽ˜์ด์ง€๊ฐ€ ํ‘œ์‹œ๋˜์ง€๋งŒ ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ๊ฒฐ๊ณผ๋ฅผ ์–ป์œผ๋ฉด ์ฝ˜์†”์ด ์ถฉ๋Œํ•ฉ๋‹ˆ๋‹ค. ๋‚ด ์ฝ˜์†” ๋กœ๊ทธ์—๋Š” statusCode ๋ฐ ๋ธŒ๋ผ์šฐ์ €์— ์•ฑ์ด ์ถฉ๋Œํ–ˆ๊ฑฐ๋‚˜ 401์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ํ™œ์„ฑํ™”๋œ ํ”„๋ก์‹œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ฒƒ์„ ์‹œ๋„ํ–ˆ์ง€๋งŒ ๊ณ„์† ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋„์™€์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

@mohammed3736 - ๋ฌผ์–ด๋ณผ ๊ณณ์ด ํ‹€๋ฆฌ

๋‚˜๋„ ์—ฌ๊ธฐ์— ์งˆ๋ฌธ์„ ํ•˜๋Ÿฌ ์™”๋Š”๋ฐ... ์—ฌ๊ธฐ ์ธ์ข…์ฐจ๋ณ„์  ๊ณต๊ฒฉ์ด ๋‹ค ๋ฌด์Šจ ์ผ์ด์•ผ? ๋‹น์‹ ์€ ๋ฏฟ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์˜ˆ, ์—ฌ์ „ํžˆ ๋‚ด ์ฝ”๋“œ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ฝ˜์†”์˜ ์œ ์ผํ•œ ์˜ค๋ฅ˜๋Š” ์—ฌ๊ธฐ๋กœ ๋‚˜๋ฅผ ๋ฐ๋ ค์˜ต๋‹ˆ๋‹ค.

๋‹น์‹ ์˜ ํŠน๊ถŒ์„ ํ™•์ธํ•˜๊ณ  ์ฆ๊ธฐ์‹ญ์‹œ์˜ค

๋‚˜๋„ ์—ฌ๊ธฐ์— ์งˆ๋ฌธ์„ ํ•˜๋Ÿฌ ์™”๋Š”๋ฐ... ์—ฌ๊ธฐ ์ธ์ข…์ฐจ๋ณ„์  ๊ณต๊ฒฉ์ด ๋‹ค ๋ฌด์Šจ ์ผ์ด์•ผ? ๋‹น์‹ ์€ ๋ฏฟ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์˜ˆ, ์—ฌ์ „ํžˆ ๋‚ด ์ฝ”๋“œ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ฝ˜์†”์˜ ์œ ์ผํ•œ ์˜ค๋ฅ˜๋Š” ์—ฌ๊ธฐ๋กœ ๋‚˜๋ฅผ ๋ฐ๋ ค์˜ต๋‹ˆ๋‹ค.

๋‹น์‹ ์˜ ํŠน๊ถŒ์„ ํ™•์ธํ•˜๊ณ  ์ฆ๊ธฐ์‹ญ์‹œ์˜ค

์–ด๋–ค ์ธ์ข…์ฐจ๋ณ„์  ๊ณต๊ฒฉ์„ ๋ง์”€ํ•˜์‹œ๋Š” ๊ฑด๊ฐ€์š”? ์ •๋ง ๋‚˜์˜๊ฒŒ ๋“ค๋ฆฐ๋‹ค

๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๊ด€์ฐฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์•„์‹œ๋Š” ๋ถ„ ๋„์™€์ฃผ์„ธ์š”

[email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ

@HaseebAhmed49 "์š”์ฒญ" npm ํŒจํ‚ค์ง€๊ฐ€ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ฒƒ์€ ๊ทธ ์ž์ฒด๋กœ ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋ฉ”์‹œ์ง€๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฑฑ์ •ํ•˜์ง€ ๋งˆ์„ธ์š”. github์˜ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๊ดœ์ฐฎ๋‹ค๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ
๊ธฐ๋ณธ์ ์œผ๋กœ ํŒจํ‚ค์ง€์— ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์ง€ ์•Š์„ ๊ฒƒ์ž„์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
๋” ์ด์ƒ ์—…๋ฐ์ดํŠธ๋˜์ง€ ์•Š์ง€๋งŒ ์—ฌ์ „ํžˆ ์™„๋ฒฝํ•˜๊ฒŒ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค.
์‚ฌ์šฉํ•˜๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ–ˆ๊ณ  ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค.

2020๋…„ 9์›” 14์ผ ์›”์š”์ผ ์˜คํ›„ 11:57 Elan Ruusamรคe [email protected]
์ผ๋‹ค:

>
>

@HaseebAhmed49 https://github.com/HseebAhmed49 "์š”์ฒญ" npm
๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํŒจํ‚ค์ง€ ์ž์ฒด๋Š” ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ๋ฉ”์‹œ์ง€๋Š” ๋„์„œ๊ด€์—
ํ”„๋กœ์ ํŠธ ๊ฐœ๋ฐœ์ž.

โ€”
๋‹น์‹ ์ด ์–ธ๊ธ‰๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/request/request/issues/3142#issuecomment-692279572 ,
๋˜๋Š” ๊ตฌ๋… ์ทจ์†Œ
https://github.com/notifications/unsubscribe-auth/AQFTBJ255VRYJW4VMUFQQ23SFZYSZANCNFSM4HCP6LRA
.

๊ทธ๋Ÿฌ๋‚˜ ์—ฌ์ „ํžˆ ์‚ฌ์šฉํ•˜๊ธฐ์— ์™„๋ฒฝํ•ฉ๋‹ˆ๋‹ค.

์„ค๋งˆ. _์ง€๊ธˆ์€_ ์ž‘๋™ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์ถ”๊ฐ€ ๋ฒ„๊ทธ ๋ฐ ๋ณด์•ˆ ์ˆ˜์ •์„ ๋ฐ›์ง€ ์•Š์„ ํŒจํ‚ค์ง€์— ๋Œ€ํ•œ ๋ช…์‹œ์ ์ธ ์ข…์†์„ฑ์„ ๊ฐ€์ ธ์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€๊ฐ€ ๊ฒฐ๊ตญ ์ž‘๋™์„ _ํ•˜์ง€__ ์ค‘์ง€ํ•˜๋ฉด(๊ฑฐ์˜ ํ™•์‹คํžˆ ์ž‘๋™ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค) ์•ฑ(๋ฐ ์‚ฌ์šฉ์ž)์„ ๊ฐ‘์ž‘์Šค๋Ÿฌ์šด ํŒŒ์† ๋ฐ ๋ณด์•ˆ ๋ˆ„์ถœ์˜ ์‹ฌ๊ฐํ•œ ์œ„ํ—˜์— ๋น ๋œจ๋ฆฌ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋„คํŠธ์›Œํฌ ์š”์ฒญ๋งŒํผ ์ค‘์š”ํ•˜๊ณ  ๋ฏผ๊ฐํ•œ ๊ฒƒ์„ ์ œ๊ณตํ•˜๋Š” request ์™€ ๊ฐ™์€ ํŒจํ‚ค์ง€์— ํŠนํžˆ ํ•ด๋‹น๋ฉ๋‹ˆ๋‹ค.

์ง€์› ์ค‘๋‹จ ๊ฒฝ๊ณ ๋Š” ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์„ ์‹œ์ž‘ํ•˜๋ผ๋Š” ์‹ฌ๊ฐํ•œ ์•Œ๋ฆผ์ž…๋‹ˆ๋‹ค. ์ด ์Šค๋ ˆ๋“œ์—์„œ ์—ฌ๋Ÿฌ ๋Œ€์•ˆ์ด ์ด๋ฏธ ์–ธ๊ธ‰(๋ฐ ๋ฐ˜๋ณต)๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„ ์ €๋„ ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค
๊ทธ๋ž˜์„œ ๋‚ด๊ฐ€ ํ•œ ๊ฒƒ์€ nodejs๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  nodejs์˜ ์ตœ์‹  ๊ธฐ๋Šฅ์„ ๋‹ค์šด๋กœ๋“œํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
14.10.1 ํ˜„์žฌ ์ตœ์‹  ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
https://nodejs.org/en/

์ปดํ“จํ„ฐ์— ์„ค์น˜๋œ ๋ชจ๋“  ์ „์—ญ npm์„ ์‚ญ์ œํ•˜์‹ญ์‹œ์˜ค.

๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒŒ ๋‹ค์•ผ...

์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ๋“ค์€ ๋ชจ๋‘ ์‚ฌ๋ผ์กŒ์Šต๋‹ˆ๋‹ค ...

@acatzk wtf lmao

์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค . ๋ฒ„๊ทธ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด ์•„๋ฌด ์กฐ์น˜๋„ ์ทจํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ณด์•ˆ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์•„๋ฌด ์กฐ์น˜๋„ ์ทจํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ์‚ฌ์šฉํ•˜๋ฉด ์•ˆ๋ฉ๋‹ˆ๋‹ค.

@davwheat ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค

์ด ์š”์ฒญ ๋ชจ๋“ˆ์˜ ๋Œ€์•ˆ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์šฐ๋ฆฌ๊ฐ€ ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ - ํ† ๋ก ํ•˜๊ณ  ์ž์› ๋ด‰์‚ฌํ•˜์‹ญ์‹œ์˜ค!

  • [ ] ํ”„๋กœ์ ํŠธ์˜ ํ˜„์žฌ ์ƒํƒœ๋กœ readme ์—…๋ฐ์ดํŠธ
  • [ ] ci ํผ๋ธ”๋ฆฌ์‹ฑ ํŒŒ์ดํ”„๋ผ์ธ @mikeal ์—…๋ฐ์ดํŠธ
  • [ ] request ๋Œ€์•ˆ #3143์— ๋Œ€ํ•œ ์ง€์นจ์ด ํฌํ•จ๋œ ๋ฌธ์„œ ์ œ๊ณต
  • [ ] ํŒจํ‚ค์ง€ ์„ค์น˜ ์‹œ ๊ฒฝ๊ณ  ๋ฉ”์‹œ์ง€๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๋‹ค๋ฅธ ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ๋ฌธ์„œ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค.
  • [ ] ์ง€์› ์ค‘๋‹จ ๋‚ ์งœ ์„ ํƒ(์ €๋Š” 6๊ฐœ์›”์— ํˆฌํ‘œํ•˜์ง€๋งŒ 12๊ฐœ์›”์ด ๋” ์šฐํ˜ธ์ ์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค)
  • [ ] ๋ชจ๋“  ๊ธฐ๋Šฅ ์š”์ฒญ ๋ฐ ๊ธฐ๋Šฅ ํ™๋ณด ๋‹ซ๊ธฐ
  • [ ] ๊ด€๋ จ ๋ฒ„๊ทธ ์ˆ˜์ • ๊ฒ€ํ†  ๋ฐ ๋ณ‘ํ•ฉ
  • [ ] ๊ธฐ๋Šฅ์ด ๋ณ‘ํ•ฉ๋˜์ง€ ์•Š์Œ์„ ์„ค๋ช…ํ•˜๋Š” github ๋ฌธ์ œ ๋ฐ ํ™๋ณด ํ…œํ”Œ๋ฆฟ ์ถ”๊ฐ€
  • [ ] ๋‹ค์Œ ์ฃผ ๋ฒ„์ „( 3.x )์„ ๋” ์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋„๋ก ํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๊ฐ€ ํ™œ์„ฑ ์œ ์ง€ ๊ด€๋ฆฌ ์ค‘์ด๋ฏ€๋กœ ๊ฒฝ๊ณ ๋ฅผ ๋ฐ›์ง€๋งŒ ์ด์ „ ํ”„๋กœ์ ํŠธ๋Š” ํ‰์†Œ์™€ ๊ฐ™์ด ๊ณ„์†๋ฉ๋‹ˆ๋‹ค.

์ด ์‹œ์ ์—์„œ ๋ˆ„๊ฐ€ ๋ฌด์—‡์„ ํ•˜๊ณ  ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

Google์—์„œ ์ง€์›ํ•˜๋Š” ๊ฒฌ๊ณ ํ•œ ๋Œ€์•ˆ(https://github.com/request/request/issues/3143 ์ œ์™ธ)์„ ์ฐพ๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋Š” https://github.com/googleapis/gaxios๋ฅผ ์ ๊ทน ๊ถŒ์žฅ ํ•ฉ๋‹ˆ๋‹ค. ์ตœ๊ทผ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ์ง€๊ธˆ๊นŒ์ง€ ํ›Œ๋ฅญํ•ฉ๋‹ˆ๋‹ค.

๋Œ€์•ˆ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? npm ํŽ˜์ด์ง€์— For more information about why request is deprecated and possible alternatives refer to {the link to this page}

3143

npm WARN ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ ์žฌ๊ฒ€์ฆ ์ค‘ ์š”์ฒญ ์˜ค๋ฅ˜๋กœ ์ธํ•ด https://registry.npmjs.org/์˜ ์˜ค๋ž˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
npm WARN deprecated [email protected] : ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142 ์ฐธ์กฐ

@thbestforyourbizdeployment ๋„ค.

๊ฐ์‚ฌ ํ•ด์š”.

๋„์™€์ฃผ์„ธ์š”?

npm WARN deprecated [email protected]: ์š”์ฒญ์ด ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. https://github.com/request/request/issues/3142๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
npm WARN ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Œ [email protected]: ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ๋” ์ด์ƒ ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! ์ฝ”๋“œ EEXIST
npm ์˜ค๋ฅ˜! ์‹œ์Šคํ…œ ํ˜ธ์ถœ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ
npm ์˜ค๋ฅ˜! ๊ฒฝ๋กœ ../lib/node_modules/firebase-tools/lib/bin/firebase.js
npm ์˜ค๋ฅ˜! ๋Œ€์ƒ /usr/local/bin/firebase
npm ์˜ค๋ฅ˜! ์˜ค๋ฅ˜ ๋ฒˆํ˜ธ -17
npm ์˜ค๋ฅ˜! EEXIST: ํŒŒ์ผ์ด ์ด๋ฏธ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. symlink '../lib/node_modules/firebase-tools/lib/bin/firebase.js' -> '/usr/local/bin/firebase'
npm ์˜ค๋ฅ˜! ํŒŒ์ผ ์กด์žฌ: /usr/local/bin/firebase
npm ์˜ค๋ฅ˜! ๊ธฐ์กด ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๊ณ  ๋‹ค์‹œ ์‹œ๋„ํ•˜๊ฑฐ๋‚˜ npm์„ ์‹คํ–‰ํ•˜์‹ญ์‹œ์˜ค.
npm ์˜ค๋ฅ˜! --force๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฌด๋ชจํ•˜๊ฒŒ ํŒŒ์ผ์„ ๋ฎ์–ด์”๋‹ˆ๋‹ค.

npm ์˜ค๋ฅ˜! ์ด ์‹คํ–‰์˜ ์ „์ฒด ๋กœ๊ทธ๋Š” ๋‹ค์Œ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
npm ์˜ค๋ฅ˜! /Users/bahar/.npm/_logs/2020-11-18T17_07_43_310Z-debug.log

@baharozcelik ๋„์™€์ค„๊ฒŒ ์—†์Šต๋‹ˆ๋‹ค.

์ฝ๋‹ค. ๋ฌธ์ œ.

sudo npm install --global ๊ฟ€๊บฝ๊ฟ€๊บฝ-cli
์ด๋ ‡๊ฒŒ ์‹œ๋„

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰