0

我正在搜索一些关于发送 HTTP 请求的示例,以便使用 java 在我的浏览器上显示网页。我找不到一个简单的例子。你有什么建议吗 ?我应该在哪里寻找带有解释的好例子?谢谢

4

2 回答 2

1

您可以 java.net.URL, java.net.URLConnection, java.io.InputStream, org.apache.commons.io.IOUtils用来管理 Java 应用程序中的 HTTP 请求

这是一个示例类 -

public class HttpUtil
{
    static URL url;
    static URLConnection urlConn;
    static DataOutputStream out;
    static BufferedReader input;

    static public String get(String _url)
    {
        try 
        {
            url = new URL(_url.replace(" ", "%20"));

            InputStream input = url.openStream();
            StringWriter writer = new StringWriter();
            IOUtils.copy(input, writer);
            return writer.toString();

        }
        catch (Exception e)
        {
            return "ERROR: " + e.getMessage();
        }
    }

    static public String post(String _url, String postData)
    {
        String result = "";

        try
        {
            url = new URL(_url);

             urlConn = url.openConnection();
             urlConn.setDoInput(true);
             urlConn.setDoOutput(true);
             urlConn.setUseCaches(false);
             urlConn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");

             out = new DataOutputStream(urlConn.getOutputStream());
             String content = postData;

             out.writeBytes(content); // send the data

             out.flush();
             out.close();

             DataInputStream in = new DataInputStream(urlConn.getInputStream());
             input = new BufferedReader(new InputStreamReader(in));

             String str;

             while ( (str = input.readLine() ) != null )
             {
                 result = result + str + "\n";
             }

             input.close();
        }
        catch (Exception e) 
        {
            System.err.println(e.toString());
            return null;
        }

        return result;
    }
}

您还可以使用这个小片段在 Java 中启动 Web 浏览器 -

URI url = new URI("file:/" + ur); // or an absolute path to a website http://google.com/

Desktop.getDesktop().browse(url);
于 2012-10-11T16:37:29.943 回答
0

利用

Desktop.browse("http://stackoverflow.com/questions/12844363/displaying-a-web-page-with-http-request");

也可以看看

于 2012-10-11T16:37:06.530 回答