Exemple #1
0
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)

}
Exemple #2
0
func songHandler(w http.ResponseWriter, r *http.Request) {
	query := mux.Vars(r)["id"]
	jsonHandler(w, musicbrainz.GetSongDetails(query))
}