丰富艺术家和专辑接口
All checks were successful
Go CI / test-and-build (push) Successful in 11s

This commit is contained in:
2026-04-07 17:29:14 +08:00
parent 9aec254f23
commit 064ea6c674
5 changed files with 213 additions and 4 deletions

View File

@@ -186,6 +186,36 @@ func (c *LibraryController) GetSongs(w http.ResponseWriter, r *http.Request) {
jsonResponse(w, songs, http.StatusOK)
}
func (c *LibraryController) GetSongsByArtist(w http.ResponseWriter, r *http.Request) {
idParam := chi.URLParam(r, "id")
id, err := strconv.Atoi(idParam)
if err != nil {
jsonError(w, err.Error(), http.StatusBadRequest)
return
}
songs, err := c.service.GetSongsByArtist(id)
if err != nil {
jsonError(w, err.Error(), http.StatusInternalServerError)
return
}
jsonResponse(w, songs, http.StatusOK)
}
func (c *LibraryController) GetSongsByAlbum(w http.ResponseWriter, r *http.Request) {
idParam := chi.URLParam(r, "id")
id, err := strconv.Atoi(idParam)
if err != nil {
jsonError(w, err.Error(), http.StatusBadRequest)
return
}
songs, err := c.service.GetSongsByAlbum(id)
if err != nil {
jsonError(w, err.Error(), http.StatusInternalServerError)
return
}
jsonResponse(w, songs, http.StatusOK)
}
func (c *LibraryController) GetArtists(w http.ResponseWriter, r *http.Request) {
artists, err := c.service.GetArtists()
if err != nil {