weather-cli/cmd/client/location.go

39 lines
585 B
Go

package main
import (
"encoding/json"
"io/ioutil"
"log"
"net/http"
"strings"
"sync"
)
func getLocation(wg *sync.WaitGroup, cfg *config) {
res, err := http.Get("https://ipinfo.io/json")
if err != nil {
log.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
log.Println(err)
}
err = json.Unmarshal(body, &cfg)
if err != nil {
log.Println(err)
}
loc := strings.Split(cfg.Location, ",")
cfg.Latitude, cfg.Longitude = loc[0], loc[1]
wg.Done()
}
func getPreciseLocation(wg *sync.WaitGroup, cfg *config) {
}