func youtubeHandler(w http.ResponseWriter, r *http.Request) { id := mux.Vars(r)["id"] song := musicbrainz.GetSongDetails(id) //TODO: move this in a `youtube` package query := song.Artist + " - " + song.Title query = url.QueryEscape(query) url := "https://www.googleapis.com/youtube/v3/search?q=" + query + "&part=snippet&key=AIzaSyCjHL3fQcfHvny-XEnLyGJ8rrxeCtnqOew" var ytres YoutubeResults jsontext, err := utils.GetJson(url) err = json.Unmarshal(jsontext, &ytres) if err != nil { panic(err) } ytId := "" if len(ytres.Items) > 0 { ytId = ytres.Items[0].Id.Id } //TODO END jsonHandler(w, ytId) }
func songHandler(w http.ResponseWriter, r *http.Request) { query := mux.Vars(r)["id"] jsonHandler(w, musicbrainz.GetSongDetails(query)) }