获取HTTP GET请求的响应

Ped*_*dro 2 java get http

我想在Java中使用http://www.imdbapi.com/,但我不知道我可以访问http响应.我尝试了以下方法:

public Map<String, String> get(String title)
{
    URL url = new URL("http://www.imdbapi.com/?t=" + title);
    URLConnection conn = url.openConnection(); 

    conn.getContent();      

}
Run Code Online (Sandbox Code Playgroud)

Bal*_*usC 7

你可以使用URLConnection#getInputStream():

InputStream input = conn.getInputStream();
// ...
Run Code Online (Sandbox Code Playgroud)

或者URL#openStream()直接简写:

InputStream input = url.openStream();
// ...
Run Code Online (Sandbox Code Playgroud)

一旦拥有它,只需将其发送到您选择的JSON解析器,例如Gson:

InputStream input = new URL("http://www.imdbapi.com/?t=" + URLEncoder.encode(title, "UTF-8")).openStream();
Map<String, String> map = new Gson().fromJson(new InputStreamReader(input, "UTF-8"), new TypeToken<Map<String, String>>(){}.getType());
// ...
Run Code Online (Sandbox Code Playgroud)

(请注意,我修改了您的查询字符串以进行正确的URL编码)

也可以看看: