Freecodecamp: FCC Weather APIκ°€ λ¬΄μž‘μœ„λ‘œ 일본 날씨λ₯Ό λ°˜ν™˜

에 λ§Œλ“  2018λ…„ 03μ›” 11일  Β·  46μ½”λ©˜νŠΈ  Β·  좜처: freeCodeCamp/freeCodeCamp

도전 이름


https://www.freecodecamp.org/learn/coding-interview-prep/take-home-projects/show-the-local-weather

문제 μ„€λͺ…

λ§Žμ€ μΊ ν”„ μ°Έκ°€μžλ“€μ΄ 포럼 도움말 μΉ΄ν…Œκ³ λ¦¬λ₯Ό 톡해 날씨 ν”„λ‘œμ νŠΈ κ΄€λ ¨ 문제λ₯Όλ³΄κ³ ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ²˜μŒμ—λŠ” 잘λͺ»λœ μ½”λ“œκ°€ μ‚¬μš©λ˜λŠ” κ²ƒμœΌλ‘œ μƒκ°ν–ˆμ§€λ§Œ μ§€λ‚œμ£Ό λ™μ•ˆ λ‚΄ 날씨 ν”„λ‘œμ νŠΈμ™€ μˆ˜λ§Žμ€ λ‹€λ₯Έ 문제λ₯Ό λ°œκ²¬ν–ˆμŠ΅λ‹ˆλ‹€. κΈ€λ¦¬μΉ˜ APIκ°€ 일본의 날씨 데이터λ₯Ό λ¬΄μž‘μœ„λ‘œ λ°˜ν™˜ν•˜λŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. fetch, jQuery $ .ajax, $ .getJSOn λ˜λŠ” 기타 방법을 μ‚¬μš©ν•˜μ—¬ μΊ ν•‘μΉ΄μ˜ ν”„λ‘œμ νŠΈλ₯Ό μ—΄μ–΄ μœ νš¨ν•œ μœ„λ„ 및 경도 κ°’μ—μ„œ 날씨 데이터λ₯Ό κ°€μ Έ μ˜€λŠ” 경우 75 %의 μ‹œκ°„ λ™μ•ˆ λ°˜ν™˜ 된 응닡은 일본 λ‚ μ”¨μž…λ‹ˆλ‹€. https://codepen.io/freeCodeCamp/full/bELRjV μ—μ„œ 날씨 데λͺ¨μ— λ‚˜νƒ€λ‚˜λŠ” 문제λ₯Ό λ³Ό μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

λΈŒλΌμš°μ € 정보

  • λΈŒλΌμš°μ € 이름, 버전 : Chrome 64.0.3282.186 (곡식 λΉŒλ“œ) (64 λΉ„νŠΈ)
  • 운영 체제 : Windows 8.1
  • λͺ¨λ°”일, λ°μŠ€ν¬ν†± λ˜λŠ” νƒœλΈ”λ¦Ώ : λ°μŠ€ν¬ν†±

κ·€ν•˜μ˜ μ½”λ“œ

ν•΄λ‹Ή μ—†μŒ

슀크린 μƒ·


image

help wanted projects-frontend

λͺ¨λ“  46 λŒ“κΈ€

문제λ₯Ό ν™•μΈν•œ 것 κ°™μŠ΅λ‹ˆλ‹€! 일본어 데이터λ₯Ό ν¬ν•¨ν•˜λŠ” μΊμ‹œμ—μ„œ μ½λŠ” 것 μž…λ‹ˆλ‹€.

μΊμ‹œλŠ” λŒ€κΈ°μ—΄μ— 60 개 μ΄μƒμ˜ μš”μ²­μ΄μžˆλŠ” κ²½μš°μ—λ§Œ μ‚¬μš©λ©λ‹ˆλ‹€ (50 ν–‰). 즉, _ 가끔 _ μ˜¬λ°”λ₯Έ κ²°κ³Όλ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ _ 가끔 _ μ˜ˆμƒμΉ˜ λͺ»ν•œ κ²°κ³Όλ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€.

이 문제λ₯Ό μ–΄λ–»κ²Œ ν•΄κ²°ν•  수 μžˆμŠ΅λ‹ˆκΉŒ? μ„Έ 가지 μ˜΅μ…˜μ΄ μžˆμŠ΅λ‹ˆλ‹€ ...

  • μΊμ‹œ 제거
  • μΊμ‹œκ°€ μž‘λ™ν•˜λ„λ‘ λ§Œλ“€κ³  μΊμ‹œ μ‚¬μš© μ—¬λΆ€λ₯Ό κ²°μ •ν•  λ•Œ μ‹€μ œλ‘œ μœ„λ„ 및 경도 데이터λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

    • μ„œλ²„μ— κ³ΌλΆ€ν•˜κ°€ κ±Έλ¦°λ‹€κ³  느끼면 μš”μ²­μ„ μ™„μ „νžˆ κ±°λΆ€ν•©λ‹ˆλ‹€ ( ν˜„μž¬ ꢌμž₯ ).

이것은 도움이 ν•„μš”ν•˜κΈ° λ•Œλ¬Έμ— 이것을보고 μ‹ΆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 이것이 ν”„λ‘œμ νŠΈλ₯Ό λ°©ν•΄ν•˜λŠ” 방법과 수면이 ν•„μš”ν•œ 방법을 κ³ λ €ν•  λ•Œ λˆ„κ΅°κ°€μ΄ 문제λ₯Ό ν•΄κ²°ν•˜κ³  μ‹Άλ‹€λ©΄ (κ°€μž₯ μ‰¬μš΄ 방법은 μš”μ²­μ„ κ±°λΆ€ν•˜λ„λ‘ μΊμ‹œλ₯Ό λ³€κ²½ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€) κ·Έλ ‡κ²Œν•˜μ‹­μ‹œμ˜€!

μ•Œκ² μŠ΅λ‹ˆλ‹€. 문제λ₯Ό ν•΄κ²° ν•œ 것 κ°™μŠ΅λ‹ˆλ‹€ . ν•˜μ§€λ§Œ API ν‚€κ°€ μ—†μ—ˆκΈ° λ•Œλ¬Έμ— ν…ŒμŠ€νŠΈ ν•  수 μ—†μ—ˆμŠ΅λ‹ˆλ‹€. λ¬Όλ‘  캐싱에 μ˜μ‘΄ν•˜μ§€ μ•ŠλŠ” DOS의 μœ„ν—˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

λ”°λΌμ„œ κ°œμ„ μ΄ μ΄λ£¨μ–΄μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€. μ•„λ§ˆλ„ 일본 데이터λ₯Ό 보낼 κ³³μ—μ„œ μš”μ²­μ„ κ±°λΆ€ν•΄μ•Όν• κΉŒμš”? 이것은 λͺ¨λ‘μ—κ²Œ 달렀 μžˆμŠ΅λ‹ˆλ‹€. μž„μ‹œλ‘œ μˆ˜μ •ν•˜κ³  내일 더 λ‚˜μ•„μ§€λ„λ‘ λ…Έλ ₯ν•˜κ² μŠ΅λ‹ˆλ‹€.

glitch.me API에 ν’€ λ¦¬ν€˜μŠ€νŠΈλ₯Ό ν•  수 μ—†λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€ (λ¬Όλ‘  μ œκ°€ λ†“μΉœ GitHub에 λ¦¬ν¬μ§€ν† λ¦¬κ°€μžˆλŠ” κ²½μš°λŠ” μ œμ™Έ). λ”°λΌμ„œ μ“°κΈ° κΆŒν•œμ΄μžˆλŠ” μ‚¬λžŒμ€ μž‘λ™ν•˜λŠ” API ν‚€λ‘œ ν…ŒμŠ€νŠΈ ν•œ ν›„ λ³€κ²½ 사항을 λ³‘ν•©ν•΄μ•Όν•©λ‹ˆλ‹€.

λ§žμŠ΅λ‹ˆλ‹€, μ €λŠ” μ§€κΈˆ afkμž…λ‹ˆλ‹€. ν•˜μ§€λ§Œ 속도 μ œν•œμ΄ ν•„μš”ν•˜λ‹€λŠ” 것을 κΉ¨λ‹¬μ•˜μŠ΅λ‹ˆλ‹€. API 호좜이 λ„ˆλ¬΄ 많으면 μš”μ²­μ΄ κ±°λΆ€λ˜λ„λ‘ μ½”λ“œλ₯Ό 곧 μˆ˜μ •ν•˜κ² μŠ΅λ‹ˆλ‹€.

μ’‹μ•„μš”, 이제 λ‹¨κΈ°μ μœΌλ‘œ 해결책을 λ§Œλ“  것 κ°™μŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ λ¬΄μ„œμš΄ 데이터 μˆ˜μ§‘μ— λŒ€ν•΄ μš°λ¦¬κ°€ λ¬΄μ—‡μ„ν•˜κ³  싢은지 잘 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€. μ’Œν‘œλŠ” 맀우 μ •ν™•ν•œ κ²½ν–₯이 μžˆμŠ΅λ‹ˆλ‹€. 그것이 100 % μ •ν™•ν•˜μ§€ μ•Šλ‹€λŠ” 것을 λΆ„λͺ…νžˆν•˜κΈ° μœ„ν•΄ μΊμ‹œμ—μžˆλŠ” 것이라면 ν™•μ‹€νžˆ ν‘œμ‹œν•΄μ•Όν•©λ‹ˆλ‹€.

μ–΄μ¨Œλ“  μ§€κΈˆμ€ μ½”λ“œκ°€ μΊμ‹œμ— μ•‘μ„ΈμŠ€ν•˜λ €κ³  ν•  λ•Œλ§ˆλ‹€ λŒ€μ‹  였λ₯˜ λ©”μ‹œμ§€λ₯Ό λ³΄λƒ…λ‹ˆλ‹€.

 function getBestCachedData(lon, lat){
+ /*
   var fs = require('fs');
   var obj = JSON.parse(fs.readFileSync('./data/cache.json', 'utf8'));
+ */
-  return obj;
+  return {
+     "error": "This API is overloaded with requests at the moment. Please try again in a few seconds and see if you get a response"
+  }
  }

μ•ˆλ…•ν•˜μ„Έμš” @ joker314 였λ₯˜λ‘œ κ±°λΆ€ν•˜λŠ” κ·€ν•˜μ˜ μ†”λ£¨μ…˜μ— λ™μ˜ν•©λ‹ˆλ‹€. 홍보 ν•΄μ£Όμ‹œ κ² μ–΄μš”? μ‹œκ°„μ„λ‚΄μ–΄ 쑰사해 μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€.

@QuincyLarson 이 https://fcc-weather-api.glitch.me/에 μ•‘μ„ΈμŠ€ ν•  μˆ˜μžˆλŠ” μ‚¬λžŒμ„ μ•ˆλ‚΄ ν•  수 μžˆμŠ΅λ‹ˆκΉŒ? 당신이 μ†Œμœ μžλΌλ©΄ μœ„μž„ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

@raisedadead ν•˜κ³  μ‹Άμ§€λ§Œ μ£Όμœ„λ₯Ό λ‘˜λŸ¬ λ΄€λŠ”λ° glitch.meκ°€ μ‹€μ œλ‘œ pull μš”μ²­μ„ μ§€μ›ν•˜λŠ”μ§€ ν™•μ‹€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

νŽΈμ§‘ : λ¬Όλ‘  μˆ˜μ • 된 μ½”λ“œλŠ” λ‚΄ 리믹슀 μ—μ„œ 찾을 수 μžˆμŠ΅λ‹ˆλ‹€.

@ joker314 λ§žμŠ΅λ‹ˆλ‹€ . λ¦¬λ―ΉμŠ€μ—μ„œ ν”„λ‘œμ νŠΈλ₯Ό μ—…λ°μ΄νŠΈν•©λ‹ˆλ‹€. 이전 μ˜κ²¬μ„ λ¬΄μ‹œν•˜μ‹­μ‹œμ˜€.

ν•΄λ‹Ή ν”„λ‘œμ νŠΈμ— λŒ€ν•œ μ•‘μ„ΈμŠ€ 확인을 Quincyμ—μ„œ 기닀리고 μžˆμŠ΅λ‹ˆλ‹€. 도움을 μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€.

@raisedadead- 이 μž„μ‹œ μˆ˜μ •μ€ μ–Όλ§ˆλ‚˜ 였래 적용 λ κΉŒμš”? 이에 λŒ€ν•œ ꢁ극적 인 μ†”λ£¨μ…˜μ€ μ–΄λ–€ λͺ¨μŠ΅μΌκΉŒμš”? 이것은 속도 μ œν•œ λ¬Έμ œμž…λ‹ˆκΉŒ? λ§Œμ•½ κ·Έλ ‡λ‹€λ©΄, 더 λ§Žμ€ μΊ ν•‘ 객이 날씨 ν”„λ‘œμ νŠΈλ₯Ό λ§Œλ“€λ©΄μ„œ 상황은 λ”μš± μ•…ν™” 될 κ²ƒμž…λ‹ˆλ‹€. 속도 μ œν•œμ„ 늘릴 수 μžˆμŠ΅λ‹ˆκΉŒ?

그렇닀면이 μž„μ‹œ μˆ˜μ •μ€ μ–Όλ§ˆλ‚˜ 였래 적용 λ κΉŒμš”?

이것은 μΌμ‹œμ μΈ 것이 μ•„λ‹ˆλ©° 였λ₯˜κ°€ λ°œμƒν•˜λ©΄ 속도 μ œν•œμœΌλ‘œ μΈν•œ λ¬Έμ œλΌλŠ” 것을 μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€.

이것은 httpsλ₯Ό μ§€μ›ν•˜μ§€ μ•ŠλŠ” OpenWeatherMaps API μœ„μ— 생성 된 래퍼 μ˜€κΈ° λ•Œλ¬Έμ— μ½”λ“œ 펜과 μΆ©λŒν–ˆμŠ΅λ‹ˆλ‹€.

λ§Œμ•½ κ·Έλ ‡λ‹€λ©΄, 더 λ§Žμ€ μΊ ν•‘ 객이 날씨 ν”„λ‘œμ νŠΈλ₯Ό λ§Œλ“€λ©΄μ„œ 상황은 λ”μš± μ•…ν™” 될 κ²ƒμž…λ‹ˆλ‹€. 속도 μ œν•œμ„ 늘릴 수 μžˆμŠ΅λ‹ˆκΉŒ?

예, μ±Œλ¦°μ§€μ—μ„œ κΈ€λ¦¬μΉ˜ 래퍼 λŒ€μ‹  APIλ₯Ό 직접 ν†΅ν•©ν•˜μ—¬ 유료 버전을 선택할 수 μžˆμŠ΅λ‹ˆλ‹€.

https://openweathermap.org/price μ°Έμ‘°

@raisedadead μΊμ‹œκ°€μžˆλŠ” μ›λž˜ μ½”λ“œμ²˜λŸΌ λ³΄μž…λ‹ˆλ‹€. 이것이 사싀이고 ν”„λΌμ΄λ²„μ‹œλ₯Ό μ‘΄μ€‘ν•˜κΈ° μœ„ν•΄ 이것이 μ •ν™•νžˆ μ–΄λ–»κ²Œ 보이길 μ›ν•˜λŠ”μ§€μ— λŒ€ν•œ μ„ΈλΆ€ 사항을 λΆ€λ“œλŸ½κ²Œ ν•  수 μžˆλ‹€λ©΄ 속도 μ œν•œμ„ ν•΄κ²°ν•  수 있기λ₯Ό λ°”λžλ‹ˆλ‹€.

λ‹€μ‹œ μƒκ°ν•˜λ©΄ 였λ₯˜ λ©”μ‹œμ§€ λŒ€μ‹  μœ νš¨ν•œ 데이터λ₯Ό λ‹€μ‹œ μ œκ³΅ν•˜λŠ” 것이 κ°€μž₯ μ’‹μŠ΅λ‹ˆλ‹€. λŒ€μ‹  μž„μ˜μ˜ 기상 쑰건을 μƒμ„±ν•˜λ„λ‘ μΊμ‹œλ₯Ό λ³€κ²½ν•˜κ³  μœ„μΉ˜λ₯Ό "API μ‚¬μš© μ€‘μž…λ‹ˆλ‹€. λ‚˜μ€‘μ— μ‹€μ œ κ²°κ³Όλ₯Ό μœ„ν•΄ λ‹€μ‹œ μ‹œλ„ν•˜μ‹­μ‹œμ˜€"둜 μ„€μ • ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?

@raisedadead, 이것에 λŒ€ν•œ λ‹Ήμ‹ μ˜ 생각은 μ–΄λ–»μŠ΅λ‹ˆκΉŒ?

이 ν”„λ‘œμ νŠΈλ₯Ό 막 μ™„λ£Œν•˜κ³  일본 날씨 데이터λ₯Ό λ°›κ±°λ‚˜ (λŒ€λΆ€λΆ„) λ°μ΄ν„°κ°€μ—†λŠ” λ¬Έμ œκ°€μžˆλŠ” μ‚¬λžŒμœΌλ‘œμ„œ 데이터λ₯Όλ°›μ§€ μ•ŠλŠ” 것보닀 데이터λ₯Όλ°›λŠ” 것이 더 μœ μš©ν•˜λ‹€κ³  λ§ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. 적어도 일본 데이터λ₯Ό μ‚¬μš©ν•˜λ©΄ μ •ν™•ν•œ 날씨λ₯Ό 보여 주더라도 λ‚΄ μ½”λ“œκ°€ μž‘λ™ν•˜λŠ”μ§€ 확인할 μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

μ΄λ‘ μ μœΌλ‘œλŠ” μž„μ˜μ˜ 데이터λ₯Ό 보낼 수 μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μš°λ¦¬λŠ” 데이터가 μ •ν™•ν•˜μ§€ μ•Šλ‹€λŠ” λΆˆλ§Œμ„ λ°›κ³  싢지 μ•ŠμŠ΅λ‹ˆλ‹€.

μ–΄μ¨Œλ“  λ„μ›€μ΄λœλ‹€λ©΄ μž„μ˜μ˜ 데이터λ₯Ό κ°€μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.

@QuincyLarson μœ„μ˜ μš”μ²­μœΌλ‘œ μ•ˆλ‚΄ν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?

κ°€μ§œ 데이터λ₯Ό λ³΄λ‚΄μ•Όν•œλ‹€κ³  μƒκ°ν•˜μ§€λ§Œ 그것이 κ°€μ§œλΌλŠ” 것을 λΆ„λͺ…νžˆν•©λ‹ˆλ‹€. μœ„μΉ˜ 이름을 "API Busy, Fake Data"둜 μ§€μ •ν•˜κ³  μ‘λ‹΅μ—μ„œ 날씨, μ’Œν‘œ 등을 λ¬΄μž‘μœ„λ‘œ μ§€μ •ν•©λ‹ˆλ‹€. μ΄λ ‡κ²Œν•˜λ©΄ μ‚¬λžŒλ“€μ€ κ²°κ³Όκ°€ μ •ν™•ν•˜μ§€ μ•Šμ€ 이유λ₯Ό μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λͺ¨λ“  것이 μ—¬μ „νžˆ 개발자λ₯Ό μœ„ν•΄ μž‘λ™ν•©λ‹ˆλ‹€.

생각?

κ°€μ§œ 데이터λ₯Ό 보내면 νŠΉμ • μœ„μΉ˜μ— λŒ€ν•œ ν˜„μž¬ 날씨 데이터λ₯Ό μ œκ³΅ν•˜λŠ” λͺ¨λ“  λͺ©μ μ„ λ¬΄λ„ˆ 뜨릴 수 μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. λ‚˜λŠ” μΊμ‹œλ₯Ό μƒμ„±ν•˜κ³  κ΅¬ν˜„ν•˜λŠ” 방법을 νŒŒμ•…ν•˜λŠ” 것에 λŒ€ν•œ @ joker314 의 아이디어λ₯Ό μ’‹μ•„ν•©λ‹ˆλ‹€.

코더가 ν”„λ‘œμ νŠΈμ— λ¬Έμ œκ°€ μžˆμŒμ„ μ•Œκ³  μ œμ–΄ ν•  μˆ˜μ—†λŠ” 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 데 λΆˆν•„μš”ν•œ μ‹œκ°„μ„ μ†ŒλΉ„ν•˜μ§€ μ•Šλ„λ‘ ν”„λ‘œμ νŠΈ νŽ˜μ΄μ§€μ— 졜근 포럼 토둠을 κ³ μ •ν•˜λŠ” 것을 κ³ λ €ν•΄ μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?

BTW, https://fcc-weather-api.glitch.me/에 μ„€λͺ… λœλŒ€λ‘œ icon 의 이미지 URL이 λ°˜ν™˜λ˜μ§€ μ•ŠλŠ”λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€ .
Images links are included in the JSON under weather[0].icon 라고
데λͺ¨ μ†”λ£¨μ…˜μ΄ μ•„μ΄μ½˜μ„ 그리기 μœ„ν•΄ CSSλ₯Ό μž‘μ„±ν–ˆμŒμ„ μ•Œμ•˜μŠ΅λ‹ˆλ‹€.

이 잠재적 인 λ¬Έμ œμ— λŒ€ν•΄ μ•Œλ € μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€. μš”μ²­ 및 응닡 μ˜ˆμ œμ—λŠ” μ›ν•˜λŠ” ν•„λ“œκ°€ ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 이 ν•„λ“œκ°€μ—†λŠ” νŠΉλ³„ν•œ μš”μ²­μ€ λ¬΄μ—‡μž…λ‹ˆκΉŒ?

@ joker314 λ‹΅μž₯μ„μœ„ν•œ Thx.

https://fcc-weather-api.glitch.me/api/current?lon=39.988&lat=116.3000

{"coord":{"lon":139,"lat":35},"weather":[{"id":803,"main":"Clouds","description":"broken clouds"}],"base":"stations","main":{"temp":28.23,"pressure":1011,"humidity":74,"temp_min":26,"temp_max":31},"visibility":10000,"wind":{"speed":3.6,"deg":230},"clouds":{"all":75},"dt":1499396400,"sys":{"type":1,"id":7616,"message":0.0043,"country":"JP","sunrise":1499369792,"sunset":1499421666},"id":1851632,"name":"Shuzenji","cod":200}

μ˜ˆμ œκ°€ μ œλŒ€λ‘œ μž‘λ™ν•˜λŠ”μ§€ λͺ°λžλŠ”데, μœ„μΉ˜ λ‚˜ νŠΉλ³„ν•œ 날씨 λ•Œλ¬ΈμΌκΉŒμš”?

@ Em-Ant Glitchμ—μ„œ 싀행쀑인 μ•±μ˜ 문제인 것 κ°™μŠ΅λ‹ˆλ‹€. μΊμ‹œλ₯Ό μ‚΄νŽ΄λ³΄κ³  이것이 μš°λ¦¬κ°€ μ§€μšΈ μˆ˜μžˆλŠ” 것인지 확인해 μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?

λͺ‡ 가지 κ°„λ‹¨ν•œ ν…ŒμŠ€νŠΈλ₯Όν–ˆλŠ”데 이것이 μˆ˜μ •λ˜μ—ˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. μ—¬μ „νžˆ λ¬Έμ œκ°€μžˆλŠ” μ‚¬λžŒμ΄ 있으면 μ–Έμ œλ“ μ§€μ΄ 문제λ₯Ό λ‹€μ‹œμ—¬μ‹­μ‹œμ˜€.

@ moT01 μ–΄λ–€ μ’…λ₯˜μ˜ ν…ŒμŠ€νŠΈλ₯Ό ν–ˆμŠ΅λ‹ˆκΉŒ? λ¬Έμ œλŠ” OpenWeather APIλ₯Ό ν˜ΈμΆœν•˜λŠ” 데 μ‚¬μš©λ˜λŠ” 무료 FCC 계정 λ‹Ή 속도 μ œν•œμ΄ μžˆλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. μ΄λŸ¬ν•œ 속도 μ œν•œμ— λ„λ‹¬ν•˜λ©΄ Glitch ν”„λ‘μ‹œκ°€ 일본 μ’Œν‘œλ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€. μ§€κΈˆ λ‹Ήμž₯ 문제둜 κ°„μ£Όλ˜μ§€ μ•ŠλŠ” μœ μΌν•œ μ΄μœ λŠ”μ΄ ν”„λ‘œμ νŠΈκ°€ 이제 μ»€λ¦¬ν˜λŸΌμ—μ„œ 선택 μ‚¬ν•­μ΄λ―€λ‘œ μ˜ˆμ „λ§ŒνΌ νžˆνŠΈκ°€ λ§Žμ§€ μ•ŠκΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€. 1 뢄에 κΈ€λ¦¬μΉ˜λ₯Ό 60 번 λˆ„λ₯΄ 자마자 λ‹€μŒ JSON이 λ°˜ν™˜λ©λ‹ˆλ‹€.

{
  "coord": {
    "lon": 139,
    "lat": 35
  },
  "weather": [
    {
      "id": 803,
      "main": "Clouds",
      "description": "broken clouds"
    }
  ],
  "base": "stations",
  "main": {
    "temp": 28.23,
    "pressure": 1011,
    "humidity": 74,
    "temp_min": 26,
    "temp_max": 31
  },
  "visibility": 10000,
  "wind": {
    "speed": 3.6,
    "deg": 230
  },
  "clouds": {
    "all": 75
  },
  "dt": 1499396400,
  "sys": {
    "type": 1,
    "id": 7616,
    "message": 0.0043,
    "country": "JP",
    "sunrise": 1499369792,
    "sunset": 1499421666
  },
  "id": 1851632,
  "name": "Shuzenji",
  "cod": 200
}

μˆ˜μ •ν•΄μ•Ό ν•  ν”„λ‘œμ νŠΈμ˜ ν•  일 λͺ©λ‘μ— 아직 남아 μžˆμœΌλ―€λ‘œμ΄ 문제λ₯Ό λ‹€μ‹œ μ—΄ 수 μžˆμŠ΅λ‹ˆκΉŒ?

Ahh, yea-방금 apiλ₯Ό λͺ‡ 번 λΉ λ₯΄κ²Œ ν˜ΈμΆœν–ˆκ³  μ •ν™•ν•œ 날씨λ₯Ό 얻을 μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€. 문제λ₯Ό ν•΄κ²°ν•˜κΈ° 전에 쑰금 더 λ¬Έμ˜ν•΄μ•Όν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

μ €λŠ” Hacktoberfestλ₯Ό μ‹œμž‘ν•  λ•Œ λ°”λ‘œ μˆ˜μ • μž‘μ—…μ„ μ‹œμž‘ν–ˆκ³  QA ν”„λ‘œμ„ΈμŠ€μ— 크게 μ°Έμ—¬ν–ˆμŠ΅λ‹ˆλ‹€. λ‚˜λ¨Έμ§€λŠ” 역사이닀. 이제 μž‘μ—… μ†”λ£¨μ…˜μ„ 얻을 수 μžˆλ„λ‘ Node와 Express에 λŒ€ν•΄ 훨씬 더 잘 μ΄ν•΄ν–ˆκΈ° λ•Œλ¬Έμ— 이것을 λ‹€μ‹œ κ²€ν† ν•΄μ•Όν•©λ‹ˆλ‹€.

ν•­λͺ©μ΄ ν•˜λ‚˜λ§ŒμžˆλŠ” 정적 μΊμ‹œκ°€ μžˆμŠ΅λ‹ˆλ‹€ (일본의 μœ„μΉ˜).

λΉ„μœ¨ μ œν•œκΈ°λ₯Ό μ œκ±°ν•˜μ—¬ μˆ˜μ •ν•˜κ±°λ‚˜ (쒋은 생각인지 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€. API ν‚€κ°€ ν•˜λ‚˜λΏμ΄λ―€λ‘œ) μš”μ²­ ν• λ‹ΉλŸ‰μ„ μ΄ˆκ³Όν•˜λŠ” 경우 λΉ„μœ¨ μ œν•œ 였λ₯˜λ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€.

μ–΄μ¨Œλ“  κΈ€λ¦¬μΉ˜μ— λŒ€ν•œμ΄ API ν”„λ‘œμ νŠΈλŠ” @MiloATH μ†Œμœ 

Camperbot 계정을 μ‚¬μš©ν•˜μ—¬ https://glitch.com/edit/#!/fcc -weather-apiμ—μ„œ Milo에 κ°€μž… μš”μ²­μ„ λ³΄λƒˆμŠ΅λ‹ˆλ‹€.

쒋은 아이디어 κ°™λ„€μš”! μ„Έ 번째 μ˜΅μ…˜μ΄ μžˆμŠ΅λ‹ˆλ‹€. 데이터가 μ‹€μ œλ‘œ 거기에 μ €μž₯λ˜λ„λ‘ μΊμ‹œλ₯Ό μˆ˜μ •ν•˜κ±°λ‚˜ 속도 μ œν•œκΈ°μ— λ„λ‹¬ν•˜λ©΄ μž„μ˜μ˜ 데이터λ₯Ό μ „μ†‘ν•©λ‹ˆλ‹€.

속도 μ œν•œμ„ μ΄ˆκ³Όν•˜λŠ” 것은 μ΄λŸ¬ν•œ μƒν™©μ—μ„œ API ν‚€κ°€ μ·¨μ†Œ 될 수 있으며 μ–΄λ–€ κ²½μš°μ—λ„ APIμ—μ„œ κ²°κ³Όλ₯Ό 얻지 λͺ»ν•  수 μžˆμœΌλ―€λ‘œ 쒋은 생각이 μ•„λ‹κΉŒ λ‘λ ΅μŠ΅λ‹ˆλ‹€.

@ joker314 이미 μ„Έ 번째 μ˜΅μ…˜μ˜ λ°©ν–₯으둜 μ›€μ§μ΄κ³ μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

κΈ€λ¦¬μΉ˜ ν”„λ‘œμ νŠΈμ— μ΄ˆλŒ€λ₯Ό μ „λ‹¬ν–ˆμŠ΅λ‹ˆλ‹€.

μ—”λ“œ ν¬μΈνŠΈλŠ” 훨씬 더 쒋을 수 μžˆμŠ΅λ‹ˆλ‹€. CI둜 λ³„λ„μ˜ 리포지토리λ₯Ό κ΅¬μΆ•ν•˜κ³  Heroku (무료 버전)와 같은 더 μ„±μˆ™ν•œ 것에 λ°°ν¬ν•΄μ•Όν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 이것은 μš°λ¦¬κ°€ ν”„λ‘œμ νŠΈμ—μ„œ 더 μ‰½κ²Œ μž‘μ—… ν•  μˆ˜μžˆκ²Œν•©λ‹ˆλ‹€.

μš°λ¦¬λŠ” 더 이상 heroku에 λ°°ν¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ§€κΈˆμ€ Glitchλ₯Ό μ‚¬μš©ν•  κ²ƒμž…λ‹ˆλ‹€. λŒ€μ²΄ ν”„λ‘œμ νŠΈκ°€ 있으면 Glitch의 freeCodeCamp κ³„μ •μœΌλ‘œ λ°°ν¬ν•˜κ³  컀리큘럼의 κΈ°μ‘΄ 과제λ₯Ό λŒ€μ²΄ν•˜κ²Œλ˜μ–΄ κΈ°μ©λ‹ˆλ‹€.

νŠΈμœ— λ‹΄μ•„ κ°€κΈ°
μ•ˆλ…•ν•˜μ„Έμš”! 이것에 λŒ€ν•œ μ—…λ°μ΄νŠΈκ°€ μžˆμŠ΅λ‹ˆκΉŒ?
μ•„ν‚€ν…μ²˜μ™€ 데이터 흐름 (그리고 κ²°κ΅­ κ΄€λ ¨ 파일 이름)이 포함 된 λ‹€μ΄μ–΄κ·Έλž¨μ„ λ³΄λŠ” 것은 λ©‹μ§ˆ κ²ƒμž…λ‹ˆλ‹€.

@ Hash2C κΈ°μ‘΄ Glitch ν”„λ‘œμ νŠΈ (μ•„λž˜ μ°Έμ‘°)λ₯Ό λ¦¬λ―ΉμŠ€ν•˜μ—¬ ν”„λ‘œμ νŠΈλ₯Όλ³΄κ³  μˆ˜μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

https://glitch.com/edit/#!/fcc -weather-api? path = server.js : 1 : 0

κ°μ‚¬ν•©λ‹ˆλ‹€ @RandellDawson , μž‘μ—… μ€‘μž…λ‹ˆλ‹€. λͺ©μš”μΌκΉŒμ§€ 첫 번째 μ΄ˆμ•ˆμ„ 마칠 수 있기λ₯Ό λ°”λžλ‹ˆλ‹€.

@ Hash2C μ‹œκ°„μ„

@RandellDawson κ°μ‚¬ν•©λ‹ˆλ‹€. μ΅œμ„ μ„ λ‹€ν•˜κ² μŠ΅λ‹ˆλ‹€.
ν˜„μž¬μ˜ μ œμ•½μ— λŒ€ν•΄ 쑰금 더 μ•Œμ•„μ•Όν•©λ‹ˆλ‹€.
μœ„μ—μ„œ μš°λ¦¬λŠ” λΆ„λ‹Ή 60 개의 히트 μ œν•œμ΄ μžˆλ‹€λŠ” 것을 μ½μ—ˆμœΌλ©°, μ΄λŠ” OpenWeather 가격 μ±…μ •μ˜ 무료 계측 인 것 κ°™μŠ΅λ‹ˆλ‹€. 이 ν•œλ„λ₯Ό λŠ˜λ¦¬λŠ” 방법이 μžˆμŠ΅λ‹ˆκΉŒ? OW에 λŒ€ν•œ λ‹€λ₯Έ ꡬ독을 λ§Œλ“œλŠ” 것과 κ°™μ€κ°€μš”? OW와 ν•¨κ»˜ μ‚¬μš©ν•  μˆ˜μžˆλŠ” λ‹€λ₯Έ 무료 "진싀 μ†ŒμŠ€"κ°€ μžˆμŠ΅λ‹ˆκΉŒ?

νŽΈμ§‘ : λ˜ν•œ μ–΄λ–€ μ’…λ₯˜μ˜ 지연이 ν—ˆμš©λ©λ‹ˆκΉŒ? 5 λΆ„? 15 λΆ„? 1 μ‹œκ°„? 3 μ‹œκ°„?

Edit2 :이 ν‘œμ—μ„œ λ³Ό 수 μžˆλ“―μ΄ OW "Weather API 데이터 μ—…λ°μ΄νŠΈ"κ°€ "<2 μ‹œκ°„"인 것 κ°™μŠ΅λ‹ˆλ‹€.
https://openweathermap.org/price
λ™μΌν•œ ν‘œμ—μ„œ κ°€μš©μ„±μ΄ 95 %에 뢈과 함을 μ•Œ 수 μžˆμŠ΅λ‹ˆλ‹€.

이 ν•œλ„λ₯Ό λŠ˜λ¦¬λŠ” 방법이 μžˆμŠ΅λ‹ˆκΉŒ? OW에 λŒ€ν•œ λ‹€λ₯Έ ꡬ독을 λ§Œλ“œλŠ” 것과 κ°™μ€κ°€μš”?

λ˜ν•œ IP μ£Όμ†Œμ— μ œν•œμ΄μžˆμ„ 수 μžˆμœΌλ―€λ‘œ (ν™•μ‹€ν•˜μ§€ μ•ŠμŒ) λ‹€λ₯Έ ꡬ독을 λ§Œλ“œλŠ” 것은 λ„μ›€μ΄λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

OW와 ν•¨κ»˜ μ‚¬μš©ν•  μˆ˜μžˆλŠ” λ‹€λ₯Έ 무료 "진싀 μ†ŒμŠ€"κ°€ μžˆμŠ΅λ‹ˆκΉŒ?

ν™•μ‹€ν•˜μ§€ μ•Šμ•„.

Edit2 :이 ν‘œμ—μ„œ λ³Ό 수 μžˆλ“―μ΄ OW "Weather API 데이터 μ—…λ°μ΄νŠΈ"κ°€ "<2 μ‹œκ°„"인 것 κ°™μŠ΅λ‹ˆλ‹€.

μ €λŠ” ν˜„μž¬ OpenWeather의 무료 버전을 μ‚¬μš©ν•˜μ—¬ 자체 날씨 ν”„λ‘œμ νŠΈλ₯Ό 개발 쀑이며 μš”μ²­μ΄ λ§ˆμ§€λ§‰ μš”μ²­μ—μ„œ 10 λΆ„ λ―Έλ§ŒμΈμ§€ ν™•μΈν•œ λ‹€μŒ λ™μΌν•œ μœ„λ„ / 경도에 λŒ€ν•΄ λ§ˆμ§€λ§‰μœΌλ‘œ λ°˜ν™˜ 된 데이터λ₯Ό ν‘œμ‹œν•˜λŠ” 것을 κ³ λ €ν–ˆμŠ΅λ‹ˆλ‹€.

κ°œλ°œμžμ—κ²Œ μ œν•œμ— λ„λ‹¬ν•˜λ©΄ νŠΉλ³„ 응닡을 보내 κ² λ‹€λŠ” 사싀을 μ•Œλ¦¬κΈ° μœ„ν•΄ μ±Œλ¦°μ§€ 지침을 μ—…λ°μ΄νŠΈν•˜μ—¬ μ•± μ‚¬μš©μžμ—κ²Œ 데이터가 μ΅œμ‹  μƒνƒœκ°€ 아닐 수 μžˆμŒμ„ μ•Œλ¦΄ μˆ˜λ„ μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. FCC APIλ₯Ό μ‚¬μš©ν•˜μ—¬ 이전 ν”„λ‘œμ νŠΈλ₯Ό μ€‘λ‹¨ν•˜μ§€ μ•Šλ„λ‘ ν˜„μž¬μ™€ λ™μΌν•œ 데이터λ₯Ό λ°˜ν™˜ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. 응닡에 μΆ”κ°€ 속성을 μΆ”κ°€ν•˜λŠ” κ²ƒλΏμž…λ‹ˆλ‹€. μ–΄λ–»κ²Œ 생각해?

이 μ €μž₯μ†Œλ₯Ό λ§Œλ“€μ—ˆμœΌλ―€λ‘œ λ‘œμ»¬μ—μ„œ ν…ŒμŠ€νŠΈν•˜κΈ°κ°€ 더 μ‰½μŠ΅λ‹ˆλ‹€.
https://github.com/Hash2C/fccWeatherApiDraft

3 가지 μ£Όμš” μ‚¬μš© 사둀 (λ‹ΉλΆ„κ°„)κ°€ 이미 닀루어 μ‘Œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

  • μ’Œν‘œκ°€ μœ νš¨ν•˜μ§€ μ•Šκ±°λ‚˜ μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” 경우 였λ₯˜λ₯Ό λ³΄λƒ…λ‹ˆλ‹€.
    그렇지 μ•ŠμœΌλ©΄ μ’Œν‘œλ₯Ό νŽΈλ¦¬ν•œ ν˜•μ‹μœΌλ‘œ λ³€ν™˜ ν•œ λ‹€μŒ μΊμ‹œμ— λ„λ‹¬ν•˜λ €κ³ ν•©λ‹ˆλ‹€.
  • μš”μ²­ 된 μ’Œν‘œκ°€ μΊμ‹œ 된 경우

    • νƒ€μž„ μŠ€νƒ¬ν”„κ°€ ν—ˆμš© κ°€λŠ₯ν•œ 델타 λ‚΄μ—μžˆλŠ” 경우 : μΊμ‹œ 된 데이터 전솑 (1)

    • else : λͺ¨μ˜ 데이터λ₯Ό μΊμ‹œ 된 λ°μ΄ν„°λ‘œ μ„€μ • (λ‚˜μ€‘μ— OpenWeather API 호좜이 μ‹€νŒ¨ ν•  경우)

  • 그렇지 μ•ŠμœΌλ©΄ : λͺ¨μ˜ 데이터λ₯Ό μš°λ¦¬κ°€ κ²°μ •ν•œ κ²ƒμœΌλ‘œ μ„€μ •ν•©λ‹ˆλ‹€ (λ‚˜μ€‘μ— OpenWeather api 호좜이 μ‹€νŒ¨ ν•  경우).

  • OpenWeather APIλ₯Ό ν˜ΈμΆœν•˜λ €κ³ ν•©λ‹ˆλ‹€.

  • μ˜¬λ°”λ₯Έ 데이터λ₯Ό μ–»μœΌλ©΄ μ „μ†‘ν•˜κ³  μΊμ‹œμ— μ €μž₯ν•˜μ‹­μ‹œμ˜€. (2)
  • 그렇지 μ•ŠμœΌλ©΄ λͺ¨μ˜ 데이터λ₯Ό λ³΄λƒ…λ‹ˆλ‹€. (3)

이 흐름은 λ¬Όλ‘  ν† λ‘ μ˜ 여지가 λ§ŽμŠ΅λ‹ˆλ‹€!

아직해야 ν•  일, μœ νš¨μ„± 검사, 비동기 μž‘μ—…, 엣지 μΌ€μ΄μŠ€ (ν…ŒμŠ€νŠΈ) 등이 많이 남아 μžˆμ§€λ§Œ 점차적으둜 도달 ν•  κ²ƒμž…λ‹ˆλ‹€. server.js νŒŒμΌμ— λŒ€ν•΄ 많이 λŒ“κΈ€μ„ λ‹¬μ•˜μŠ΅λ‹ˆλ‹€ (λ‘λ €μ›Œν•˜μ§€ λ§ˆμ„Έμš”). 점차적으둜 λŒ€λΆ€λΆ„μ˜ 정보λ₯Ό ν•„ν„°λ§ν•˜κ³  μ—¬κΈ°μ—μ„œ 도움을 μš”μ²­ν•˜μ—¬ 각 λ¬Έμ œμ— λŒ€ν•΄ λ…Όμ˜ ν•  κ²ƒμž…λ‹ˆλ‹€.

단지 μ•„μ΄λ””μ–΄μž…λ‹ˆλ‹€. κ²°κ΅­ "μˆ˜ν–‰λ˜μ§€ μ•Šμ€ OpenWeather API (λ˜λŠ” 기타)에 λŒ€ν•œ μ‚¬μš© κ°€λŠ₯ν•œ μš”μ²­"의 수λ₯Ό μ΅œμ†Œν™”ν•˜λ €λŠ” 데이터 μ„œλΉ„μŠ€λ₯Ό κ°€μ§ˆ 수 μžˆμŠ΅λ‹ˆκΉŒ? 이 μ„œλΉ„μŠ€λŠ” 예λ₯Ό λ“€μ–΄ MongoDB λ°μ΄ν„°λ² μ΄μŠ€λ₯Ό 곡급할 κ²ƒμž…λ‹ˆλ‹€. μΊμ‹œκ°€ 될 κ²ƒμž…λ‹ˆλ‹€ (Memcachedλ₯Ό μ‚¬μš©ν•  수 μžˆμ§€λ§Œ λ„ˆλ¬΄ λ§Žμ„ 수 μžˆμŠ΅λ‹ˆλ‹€. μΆ”κ°€ 속도가 ν•„μš”ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€).

기타 아이디어 :이 μ„œλΉ„μŠ€μ˜ κ³Όκ±° μ‚¬μš© 톡계가 μžˆμŠ΅λ‹ˆκΉŒ? 그렇지 μ•Šλ‹€λ©΄, μ•„λ§ˆλ„ μš°λ¦¬λŠ” ν•˜λ‚˜λ₯Ό λ§Œλ“€κΈ° μ‹œμž‘ν•  μˆ˜μžˆμ„ κ²ƒμž…λ‹ˆλ‹€. μ•„λ§ˆλ„ 그것은 κ²°κ΅­ κ°€λŠ₯ν•˜μ§€λ§Œ 맀우 차선적인 μ†”λ£¨μ…˜μ„ μ΅œμ ν™”ν•˜κΈ° μœ„ν•΄ 유용 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

μ΄ν•΄ν•˜λŠ” 데 도움이 ν•„μš”ν•œ ν•œ κ°€μ§€λŠ” githubκ°€ κ²½κ³ ν•˜λŠ” λ³΄μ•ˆ λ¬Έμ œμž…λ‹ˆλ‹€.
securityIssuesApi

(μ–΄λ–€ 이유둜 λ‚˜λŠ” λ‹Ήμ‹ μ˜ λ©”μ‹œμ§€λ₯Ό μ™„μ „νžˆ λ†“μ³€μŠ΅λ‹ˆλ‹€!)

λ˜ν•œ IP μ£Όμ†Œμ— μ œν•œμ΄μžˆμ„ 수 μžˆμœΌλ―€λ‘œ (ν™•μ‹€ν•˜μ§€ μ•ŠμŒ) λ‹€λ₯Έ ꡬ독을 λ§Œλ“œλŠ” 것은 λ„μ›€μ΄λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

쒋은 지적. ν…ŒμŠ€νŠΈ ν•  κ°€μΉ˜κ°€ μžˆμŠ΅λ‹ˆκΉŒ?

OW와 ν•¨κ»˜ μ‚¬μš©ν•  μˆ˜μžˆλŠ” λ‹€λ₯Έ 무료 "진싀 μ†ŒμŠ€"κ°€ μžˆμŠ΅λ‹ˆκΉŒ?

ν™•μ‹€ν•˜μ§€ μ•Šμ•„.

μ΄λ ‡κ²Œ ν•  수 μžˆλ‹€λ©΄ 성곡적인 μ†”λ£¨μ…˜μ„ 얻을 ν™•λ₯ μ΄ 크게 λ†’μ•„μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€.

μ €λŠ” ν˜„μž¬ OpenWeather의 무료 버전을 μ‚¬μš©ν•˜μ—¬ 자체 날씨 ν”„λ‘œμ νŠΈλ₯Ό 개발 쀑이며 μš”μ²­μ΄ λ§ˆμ§€λ§‰ μš”μ²­μ—μ„œ 10 λΆ„ λ―Έλ§ŒμΈμ§€ ν™•μΈν•œ λ‹€μŒ λ™μΌν•œ μœ„λ„ / 경도에 λŒ€ν•΄ λ§ˆμ§€λ§‰μœΌλ‘œ λ°˜ν™˜ 된 데이터λ₯Ό ν‘œμ‹œν•˜λŠ” 것을 κ³ λ €ν–ˆμŠ΅λ‹ˆλ‹€.

예, μΊμ‹œ 된 데이터λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆκΉŒ? 이전에 ν—ˆμš© κ°€λŠ₯ν•œ 지연에 λŒ€ν•΄ μ§ˆλ¬Έν–ˆκΈ° λ•Œλ¬Έμ— 2 μ‹œκ°„ 미만의 μ§ˆλ¬Έμ„ κ°€μ Έ μ™”μŠ΅λ‹ˆλ‹€. 지연 μ‹œκ°„μ΄ 길수둝 더 μ’‹κΈ° λ•Œλ¬Έμ— μΊμ‹œμ— 더 많이 μ ‘κ·Όν•˜κ³  APIλ₯Ό 자주 호좜 ν•  ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€. μ‹œμž‘ν•˜κΈ° μœ„ν•΄ μ΅œλŒ€ 1 μ‹œκ°„ 전에 데이터λ₯Ό 보낼 수 μžˆλ‹€κ³  κ°€μ •ν•˜κ³  코딩을 μ‹œμž‘ν–ˆμŠ΅λ‹ˆλ‹€.

κ°œλ°œμžμ—κ²Œ μ œν•œμ— λ„λ‹¬ν•˜λ©΄ νŠΉλ³„ 응닡을 보내 κ² λ‹€λŠ” 사싀을 μ•Œλ¦¬κΈ° μœ„ν•΄ μ±Œλ¦°μ§€ 지침을 μ—…λ°μ΄νŠΈν•˜μ—¬ μ•± μ‚¬μš©μžμ—κ²Œ 데이터가 μ΅œμ‹  μƒνƒœκ°€ 아닐 수 μžˆμŒμ„ μ•Œλ¦΄ μˆ˜λ„ μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. FCC APIλ₯Ό μ‚¬μš©ν•˜μ—¬ 이전 ν”„λ‘œμ νŠΈλ₯Ό μ€‘λ‹¨ν•˜μ§€ μ•Šλ„λ‘ ν˜„μž¬μ™€ λ™μΌν•œ 데이터λ₯Ό λ°˜ν™˜ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. 응닡에 μΆ”κ°€ 속성을 μΆ”κ°€ν•˜λŠ” κ²ƒλΏμž…λ‹ˆλ‹€. μ–΄λ–»κ²Œ 생각해?

λ‚˜λŠ” κ°œλ°œμžμ—κ²Œ κ΄€λ ¨ 정보λ₯Ό μ œκ³΅ν•˜κ³  κ°œλ°œμžκ°€ 선택할 수 μžˆλ„λ‘ν•˜λŠ”μ΄ 아이디어에 μ „μ μœΌλ‘œ λ™μ˜ν•©λ‹ˆλ‹€. 이것이 μ œκ°€ κ°€μž₯ μ μ ˆν•˜λ‹€κ³  μƒκ°ν–ˆλ˜ κ²½λ‘œμ΄κΈ°λ„ν•©λ‹ˆλ‹€.

FCC ν”„λ‘œμ νŠΈμ—μ„œ ν…ŒμŠ€νŠΈ 및 μš”μ²­μ„μœ„ν•œ ν‘œμ€€ 도ꡬ가 μžˆμŠ΅λ‹ˆκΉŒ?
μ‚¬μš©μ€‘μΈ μš”μ²­μ˜ 경우 (Axios λŒ€μ‹  μ‚¬μš©ν•΄λ³΄κΈ°λ‘œ κ²°μ •ν–ˆκΈ° λ•Œλ¬Έμ—)
www.npmjs.com/package/request
ν…ŒμŠ€νŠΈλ₯Ό μœ„ν•΄ κ²½ν—˜μ΄ λ§Žμ§€λŠ” μ•Šμ§€λ§Œ λͺ¨μΉ΄μ— λŒ€ν•΄ μƒκ°ν•˜κ³ μžˆμ—ˆμŠ΅λ‹ˆλ‹€.
ν•˜μ§€λ§Œ μ–΄λ–€ 도ꡬ가 FCC와 더 잘 ν†΅ν•©λ˜λŠ”μ§€ μ•Œλ €μ£Όμ„Έμš”

μ΄ν•΄ν•˜λŠ” 데 도움이 ν•„μš”ν•œ ν•œ κ°€μ§€λŠ” githubκ°€ κ²½κ³ ν•˜λŠ” λ³΄μ•ˆ λ¬Έμ œμž…λ‹ˆλ‹€.

κ°€μž₯ κ°„λ‹¨ν•œ 해결책은 npm audit fix 을 μ‹€ν–‰ ν•œ λ‹€μŒ μ—…λ°μ΄νŠΈ 된 package.json 및 package-lock.json λ₯Ό μ»€λ°‹ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. μƒˆ νŒ¨ν‚€μ§€λŠ” μ΄μ „μ˜ μ·¨μ•½ν•œ νŒ¨ν‚€μ§€μ—μ„œ λ³€κ²½λœ 사항이 μ—†μ–΄μ•Όν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ νŒ¨ν‚€μ§€ μž‘μ„±μžκ°€ μ‹€μˆ˜λ‘œ μ£Όμš” λ³€κ²½ 사항을 λ„μž…ν•˜μ§€ μ•Šμ•˜λ‹€κ³  κ°€μ •ν•˜λ―€λ‘œ μˆ˜μ • 사항이 적용된 ν›„ 앱을 μˆ˜λ™μœΌλ‘œ ν™•μΈν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.

μ €λŠ” OpenWeather APIλ₯Ό 가지고 λ†€μ•˜μŠ΅λ‹ˆλ‹€ (μ‹€μ œλ‘œ μ²˜μŒλΆ€ν„°μ΄ μž‘μ—…μ„ μˆ˜ν–‰ ν–ˆμ–΄μ•Όν–ˆμŠ΅λ‹ˆλ‹€).
μš°λ¦¬κ°€ μ•Œκ³  μžˆμ—ˆλ‚˜μš”? https://openweathermap.org/faq#error401
κ΄€λ ¨ λΆ€λΆ„

FOSS 개발자 : 무료 및 μ˜€ν”ˆ μ†ŒμŠ€ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό ν™˜μ˜ν•˜λ©° 기꺼이 도와 λ“œλ¦¬κ² μŠ΅λ‹ˆλ‹€. 무료 μ†Œν”„νŠΈμ›¨μ–΄ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ OWM 데이터λ₯Ό μ‚¬μš©ν•˜λ €λ©΄ API ν‚€λ₯Ό λ“±λ‘ν•˜κ³  등둝 된 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ 및 API ν‚€λ₯Ό μ„€λͺ…ν•˜λŠ” 티켓을 μ œμΆœν•˜μ‹­μ‹œμ˜€. OWM은 μ˜€ν”ˆ μ†ŒμŠ€ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ μ‚¬μš©λ˜λŠ” 경우 킀에 λŒ€ν•œ μš”μ²­ λ¦¬ν”„νŠΈ μ•‘μ„ΈμŠ€ μ œν•œμ„ κ²€ν† ν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš” μ—¬λŸ¬λΆ„, μ €λŠ” μ˜ˆμƒλ³΄λ‹€ 더 λ§Žμ€ μ œμ•½μ„ λ°›μ•˜μŠ΅λ‹ˆλ‹€.
μ—¬κ°€ μ‹œκ°„μ—λŠ” OpenWeather APIλ₯Ό κ³΅λΆ€ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. λΆˆν–‰νžˆλ„ 잘 λ¬Έμ„œν™”λ˜μ–΄ μžˆμ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
bbox μ˜΅μ…˜μ„ μ‚¬μš©ν•˜μ—¬ μ‹€ν–‰ κ°€λŠ₯ν•œ μ „λž΅μ„ 생각 ν•΄λ‚Έ 것 κ°™μ§€λ§Œ 아직 ν…ŒμŠ€νŠΈ μ€‘μž…λ‹ˆλ‹€.
λ‚˜λŠ” λ‚΄κ°€ λ§Œλ‚œ λͺ¨λ“  정보, λ‚΄κ°€ μˆ˜ν–‰ν•˜λŠ” ν…ŒμŠ€νŠΈλ‘œ λ¬Έμ„œλ₯Ό λ§Œλ“œλŠ” 아이디어λ₯Ό 생각해 λƒˆμŠ΅λ‹ˆλ‹€.

@ Hash2C μ‹œκ°„μ„

μ•ˆλ…•ν•˜μ„Έμš”.
당신은 당신이 무슨 λ§μ„ν•˜λŠ”μ§€ μ•Œκ³ μžˆμ—ˆμŠ΅λ‹ˆλ‹€ : heavy_check_mark :

@ Hash2C μ†”λ£¨μ…˜μ€ μ–΄λ–»κ²Œ μ§„ν–‰λ˜κ³  μžˆμŠ΅λ‹ˆκΉŒ?

더 이상 인증에 ν•„μš”ν•œ ν”„λ‘œμ νŠΈκ°€ μ•„λ‹ˆκΈ° λ•Œλ¬Έμ— 일반적으둜이 ν”„λ‘œμ νŠΈμ—μ„œ μž‘μ—…ν•˜λŠ” μ‚¬μš©μž μˆ˜κ°€ 크게 κ°μ†Œν•˜μ—¬μ΄ 문제λ₯Ό μ’…κ²°ν–ˆμŠ΅λ‹ˆλ‹€. 이둜 인해 API에 λŒ€ν•œ λΉ„μœ¨ μ œν•œμ— λ„λ‹¬ν•˜λŠ” μΈμŠ€ν„΄μŠ€ μˆ˜κ°€ 쀄어 λ“€μ—ˆμŠ΅λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰