Function get_url

Source
pub fn get_url(
    artist: &str,
    title: &str,
    album: &str,
    duration_secs: u64,
) -> String
Expand description

The address that asks about one track.

Four criteria, and only two of them are the service’s requirement. A live answer to artist_name and track_name alone came back 200, so the album and the length are this program’s insistence rather than LRCLIB’s: a song has a studio take, a live one and three covers, they share a title, and the length is what tells them apart. Both are things this catalog holds exactly — the duration is measured on the stream rather than read from a tag — so asking the narrow question costs nothing and answers about this recording.

An empty album is left out of the address rather than sent empty. The two are different questions: an omitted parameter asks with one criterion fewer, where album_name= states that the album is called nothing. Only the first has been seen to work, and inventing the behaviour of the second is exactly what a checked answer is for.