歌词下载api请求[JAVA]

时间:2015-01-19 12:17:00

标签: java request

在主题中我需要编写请求,这将使用lyricwiki将歌词下载到MP3播放器中的歌曲。以下是我应该使用的链接。

http://api.wikia.com/wiki/LyricWiki_API/REST

任何提示都会很棒!最好的例子是如何编写简单的请求? 我不知道应该如何开始。任何例子?使用API​​的代码如何?

1 个答案:

答案 0 :(得分:0)

这是一个非常简单的例子。它可能甚至不会在没有添加至少一些错误处理的情况下进行编译,如果我打算使用它,我会做很多事情来清理它,但它应该给你一个起点

encodeField(String in)
{
    // usually, this would be
    //  return java.net.URLEncoder.encode(in, "UTF-8");
    // but this site *appears* to use a non-standard mapping
    return java.net.URLEncoder.encode(in.replace(' ', '_'), "UTF-8");
}

getLyricsText(String artist, String song)
{
    // construct the REST query URL
    String query = "http://lyrics.wikia.com/api.php?func=getSong&artist="
                 + encodeField(artist)
                 + "&song="
                 + encodeField(song)
                 + "&fmt=text";
    // open the URL and get a stream to read from
    java.net.URL url = new java.net.URL(query);
    java.io.InputStream is = url.openStream();
    // get the text from the stream as lines
    java.io.BufferedReader reader = new java.io.BufferedReader(is);
    StringBuilder buf = new StringBuilder();
    String s;
    while ( (s = reader.readLine()) != null )
        buf.append(s).append('\n');
    // return the lines
    return buf.toString();
}