如何在Swing应用程序中从浏览器获取标头值?

时间:2015-03-02 14:07:00

标签: java swing awt

我有一个网址可以说(www.example.com)。当我使用以下代码点击此URL时,它将在系统默认浏览器中打开。在浏览器中,它将要求用户输入用户名和密码。然后他必须输入用户名和密码。如果它们再次正确,页面将被重定向到(www.example.com)。现在我必须得到标题值" isSuccess"形成浏览器。如果它是普通的Web应用程序,我可以使用" request.getHeader("isSuccess")"来实现它。但是如何在Swing应用程序中实现相同的目标呢?

//Swing code to open URL in default browser
Desktop d=Desktop.getDesktop();
d.browse(new URI("http://www.example.com")); 

注意:出于安全原因,我使用了上面的虚拟URL。

1 个答案:

答案 0 :(得分:0)

您无法使用Desktop执行此操作。所有Desktop.browse()都会告诉默认浏览器打开一个URL。就像您在自己喜欢的浏览器中导航到某个URL一样,它不会显示HTTP标题信息供您查看。

两个选项。首先使用Swing应用程序内部的浏览器,例如:http://djproject.sourceforge.net/ns/index.html

其次,使用自定义协议。在这种情况下,网页(例如您的成功页面)可以向已安装的应用程序发送消息。不过,您必须为每个平台提供不同的解决方案(OS X JRE 6OS X JRE 7, look at documentation on how to add a custom protocolWindows)。