본문 바로가기

iOS

무료로 날씨 API 사용하기(with. tomorrow.io)

안녕하세요. 

오늘은 날씨 API를 무료로 사용할 수 있는 곳에 대해서 소개하겠습니다.

🌤️ tomorrow.io API 소개

https://www.tomorrow.io/weather-api/

 

Weather API

Trusted by 40,000+ developers, our Weather API provides real-time, accurate forecasts worldwide. Supports JS, Python, R, and more.

www.tomorrow.io

 

tomorrow.io의 Wather API란?

무료 날씨 API를 통해 정확하고 최신의 기상 정보를 확인할 수 있습니다. 가장 첨단의 인터페이스를 갖춘 API로 날씨에 의존하는 기능을 구동하기 위한 완벽한 솔루션이라고 메인 화면에 소개되어 있습니다.

 

🗣️ API 사용 방법 소개

step 1. 회원가입 -> 자동으로 API Key가 발급됩니다.

 

step 2. Available Weather Parameters  중에 하나를 클릭하면 tomorrow docs로 페이지가 이동하게 됩니다.

 

여기서 Data Layers에 대한 정보를 볼 수 있습니다.

Field 값에는 어떤 값들이 들어가야하고, 어떤 정보를 의미하고 있는지, 어떤 형태로 제공이 되는지 등을 볼 수 있습니다.

 

step 3. 문서 말고 실제로 api를 테스트를 해보고 싶다면 GET, POST 표시가 있는 페이지로 이동하면 됩니다.

 

저는 그 중에서도 PARAMS로 제일 많은 요소를 넣을 수 있고, 날짜 조정도 가능한

Retrieve Timelines로 테스트를 진행해보도록 하겠습니다.

📈 Retrieve Timelines

위에 사진이 기본 화면 모습입니다.
왼쪽에는 BODY PARAMS를 수정하는 부분이 있고, 원하는 정보를 Body Parmas에서 수정하면
오른쪽 화면에서 자신이 원하는 언어로 API 통신 코드를 만들어 줍니다.
저는 iOS 프로젝트에서 사용할 예정이기 때문에 Swift 언어를 선택해주었습니다.

 

그리고 제가 사용한 PARAMS 위주로 설명 드리겠습니다.

  •   location : 위도, 경도
  •   fields  
    •  temperature : 현재 기온
    •  temperatureMax : 최고 기온
    •  temperatureMin : 최저 기온
    •  precipitationProbability : 강수 확률
    •  weatherCodeFullDay : 날씨 정보
      docs에서 weatherCode가 의미하는 날씨 정보에 대한 설명이 있습니다.
      Swift에서 해당 문서를 보고 enum으로 미리 코드를 구현해놓으면 사용할 때 편할 것 같습니다.
  •  units : metric(Celcius_섭씨) or imperial(Fahrenheit_화씨)
  •   timesteps  
    • Start time can be "now", "nowPlusXm/h/d", "nowMinusXm/h/d" or ISO 8601 format "2019-03-20T14:09:50Z". (defaults to now)라고 적혀 있어서 해당 조건에 맞춰서 String을 작성해주면 됩니다.
    •  startTime: nowPlus1d, endTime: nowPlus5d => 저는 5일동안의 일기예보에 대해서 알고 싶기 때문에 위에 처럼 날짜 설정을 해주었습니다. (endTime에서 5d 이상의 숫자는 사용이 불가합니다.  )

 

 

❌ 만약 PARAMS에 올바르지 않은 값을 넣으면
왼쪽 사진처럼 에러 응답을 받게 됩니다.

 

 

 

 

 

 

 

 

 

 

✅ PARAMS가 알맞게 작성이 되었다면200으로 성공적인 Response를 받을 수  있습니다.

 

 

 

 

 

🚀 Postman 사용

만약에 Test를 웹사이트에서 하면 response의 가독성이 떨어지기 때문에 원한다면 Postman에서도 API 테스트를 할 수 있습니다.

 

step 1. postman을 열어서 Method, URL 그리고 apikey를 입력해줍니다.

 

step 2. Language를 Shell로 변경하고

 

step 3. Shell에서 -- data 다음에 보이는 { ~ }를 복사해서 Postman Body에 붙여넣어 줍니다.

 

step 4. Send 버튼을 누르면 하단에서 Response를 볼 수 있습니다.

 

 

그러면 오늘은 여기서 설명을 마치겠습니다.

혹시 틀린 내용이 있거나 궁금한 내용이 있으시다면 댓글로 남겨주세요~ 💬

'iOS' 카테고리의 다른 글