Added basic weather fetching

This commit is contained in:
Andrew Scott 2022-07-08 22:12:21 -04:00
parent b9f3bdfd47
commit 7f08573637
Signed by: a
GPG key ID: 3EB62D0BBB8DB381

View file

@ -1,9 +1,34 @@
package main
import "sync"
import (
"encoding/json"
"io/ioutil"
"log"
"net/http"
)
func getToday(wg *sync.WaitGroup, cfg *config) {
func getCurrent(app *application) {
// errMsg := "\nSorry, couldn't get today's weather. Perhaps you've been rate limited?"
lat := "lat=" + app.Config.Latitude
lon := "&lon=" + app.Config.Longitude
units := "&units=" + app.Config.Units
key := "&appid=" + app.Config.ApiKey
url := "https://pro.openweathermap.org/data/2.5/weather?" + lat + lon + units + key
res, err := http.Get(url)
if err != nil {
log.Println(err)
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
log.Println(err)
}
err = json.Unmarshal(body, &app.Forecast)
if err != nil {
log.Println(err)
}
app.WaitGroup.Done()
}