Java中访问受密码保护的网站及Swing中的HTML处理
1. 访问受密码保护的网站
在网络访问中,许多网站会采用不同的认证方式来保护其内容。有些网站能正确通过HTTP认证,而有些则通过cookie和HTML表单进行错误的实现。Java的URL类可以访问使用HTTP认证的网站,但需要提供用户名和密码。不过,Java对于使用非标准的基于cookie认证的网站支持不足,主要原因如下:
- Java 1.4及更早版本对cookie支持有限。
- 需要解析和提交HTML表单。
- cookie与Web架构相悖。
尽管Java 1.5增加了一些cookie支持,但对认证cookie的处理与其他cookie并无区别。若要自行提供支持,可使用URLConnection类读写设置和返回cookie的HTTP头,但这绝非易事,通常需要为每个要连接的网站编写自定义代码,除非实现一个支持完整HTML表单和cookie的完整Web浏览器。相比之下,访问受标准HTTP认证保护的网站要容易得多。
1.1 Authenticator类
java.net 包中的 Authenticator 类可用于为使用HTTP认证保护的网站提供用户名和密码,其定义如下:
public abstract class Authenticator extends Object // Java 1.2
由于 Authenticator 是抽象类,必须创建其子类。不同的子类可能
超级会员免费看
订阅专栏 解锁全文
848

被折叠的 条评论
为什么被折叠?



