20231201 / open API 서울의 현재 기온 표시
# open API 서울의 현재 기온 넣기
[문제1] https오류
sparta 사전캠프 강의에서 받은 open API 의 url은 https오류(보안관련)로 사용되지 않았다.
[해결]
다른 open API를 사용하기로 함
[문제2] 켈빈온도
https://api.openweathermap.org/ 에서 제공되는 API를 Jason으로 실행했더니
온도의 숫자가 우리가 일반적으로 알고있는 '섭씨(Celsius) '표시가 아닌 '켈빈(Kelvin) '온도 형식으로 보여졌다.
[해결]
https://openweathermap.org/current#data 를 보니 제공되는 url 주소 뒤에 &units=metric를 넣으면 섭씨표시가 가능하다는 것을 알았다.
[문제 3] https오류
github에 배포했는데 역시 문제1에서 발생했던 것처럼 https오류(보안관련)인 동일한 문제로 기온이 나타나지 않았다.
[해결]
개발자콘솔을 열어보니 정확히는 이해하지 못했으나 "http는 https에서 사용하지못한다...............?"는 내용인 것 같았다.
그래서 혹시나 하고 http:// 로 시작하는 url을 https:// 로 변경해 보았다 (약간 도박)
그랬더니 정상적으로 작동했다!! 감격
# 결론
1. JQuery를 넣고
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
2. 기온을 보여줄 곳을 넣고
<!-- Fetch 현재기온을 보여줄 곳을 설정 -->
<p style="position:fixed;bottom:-20px;left:10px;"><span id="weatherInfo"></span></p>
3. 해당 script를 넣으면 끝!
- apiUrl 에서 seoul대신 다른 지역을 넣어도 됨
- 자신의키 는 https://openweathermap.org/에서 회원가입 후 제공되는 My API keys에서 확인할수 있음
<script>
// OpenWeatherMap API URL
var apiUrl = "https://api.openweathermap.org/data/2.5/weather?q=seoul&appid=자신의키&units=metric";
// API에서 데이터 가져오기
$.get(apiUrl, function(data) {
// 온도 추출
var temperature = data.main.temp;
// HTML에 온도 값을 추가
$("#weatherInfo").html("서울의 현재 온도: " + temperature + " °C");
});
</script>
짠!!
# 참고자료
날씨 API : OpenWeatherMap
OpenWeatherMap는 날씨와 관련된 데이터를 제공해주는 API이다. https://openweathermap.org/ Сurrent weather and forecast - OpenWeatherMap Access current weather data for any location on Earth including over 200,000 cities! The data is freque
ksyy.tistory.com
기상청 오픈 API 삽질기
달력에 날씨 정보를 보여준다면 좀더 직관적으로 날짜 별 날씨 변화를 인지할 수 있겠다는 생각이 들었다. 이번 내용은 사이드 프로젝트에 공공데이터 포털 API 를 활용하여 달력에 단기 예보 보
velog.io
https://www.youtube.com/watch?v=QxEZCSfUrzs