【发布时间】:2019-12-27 13:13:52
【问题描述】:
我想从独立应用程序进行身份验证。因此,我在JEditorPane 上显示我公司的实习生登录页面。首先,您会看到一个像常见的登录窗口。您输入用户名和密码。如果登录成功,页面将变为“登录成功”。我如何区分这些窗口并获取第二个窗口的 URL?
JEditorPane loginPane = new JEditorPane();
loginPane.setEditable(false);
try {
loginPane.setPage("http://mypage.blalala.com");
} catch (IOException e) {
loginPane.setContentType("text/html");
loginPane.setText("<html>Could not load</html>");
}
JScrollPane scrollPane = new JScrollPane(loginPane);
JFrame f = new JFrame("Test HTML");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.getContentPane().add(scrollPane);
f.setPreferredSize(new Dimension(800, 600));
f.setVisible(true);
【问题讨论】:
-
也许
here的答案会给你一个想法。 -
@second 不,这不是答案,它只返回本网站上的组件。我想在成功登录的情况下得到网站的回复
-
我不确定你想说什么。如果您使用
HttpClient,您可以向您的服务器发送任何类型的请求,您应该会得到正确的响应。您可能想要编辑您的问题并描述您期望服务器提供什么样的响应。 -
我认为来自
@vincenzopalazzo的答案应该向您展示一般用例,但它也不适用于我的示例页面。它可能需要一些调整。理论上,如果您正确输入数据,在HyperLinkListener中,您应该能够向您的服务器生成正确的请求,它应该使用新的 html 页面进行回复。 -
如果您仍然需要在应用程序内部进行区分,您可能必须解析 url / 或内容以查看您所在的页面(这又会导致初始链接的答案)。
标签: java swing jeditorpane