
java程序如何穿透带有密码验证的代理
发布时间:2006-05-20 22:53:05 来源: 网友评论 0 条网上也有一些文章但是大多数涉及带有授权验证的proxy都有问题,主要问题就是出在对Authenticator.setDefault的使用,以及base64编码的问题上代码是最没有二义性的文档,实现原理不再解释,请看代码去体会。如果转载请注明代码出处。
package org.chimae.net;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.Authenticator;
import java.net.HttpURLConnection;
import java.net.PasswordAuthentication;
import java.net.URL;
/**
* @author chimae@cnjsp.org
*/
public class ProxyConnTest {
public static void initProxy(String host, int port, final String username,
final String password) {
Authenticator.setDefault(new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(username,
new String(password).toCharArray());
}
});
System.setProperty(/"http.proxyType/", /"4/");
System.setProperty(/"http.proxyPort/", Integer.toString(port));
System.setProperty(/"http.proxyHost/", host);
System.setProperty(/"http.proxySet/", /"true/");
}
public static void main(String[] args) throws IOException {
String url = /"http://java.sun.com//";
String proxy = /"yourProxy/";
int port =8080;
String username =/"username/";
String password =/"password/";
String curLine = /"/";
String content = /"/";
URL server = new URL(url);
initProxy(proxy,port,username,password);
HttpURLConnection connection = (HttpURLConnection)server.openConnection();
connection.connect();
InputStream is = connection.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
while ((curLine = reader.readLine()) != null) {
content += curLine;
}
System.out.println(/"content= /" + content);
is.close();
}
}
- Mustang与Rhino:Java 6中的脚本编写
- 理解Java Swing中的Accelerator Key
- 实例分析Java SE 6.0新增功能
- Java的事件处理
- 书评:Java的盛宴(上)
- 让JavaME程序真正Run Anywhere
- JavaOne 大会焦点关注 Ajax也疯狂
- Java开源架构Jdon应用系统案例开发
- IBM发布Java字节码配置工具包BIPTK
- 实现高效Java编程规范的十一条基础规则
- 1.Java连接SQL Server 2000
- 2.Java文件操作详解
- 3.Java控件设计入门
- 4.Java操作Excel电子表格
- 5.Java: JNI完全手册
- 6.Java命令行简介
- 7.开发J2EE应用应遵循的几点原则
- 8.Servlet与Javabean配置
- 9.Java规则引擎与其API应用详解
- 10.CLASSPATH详解
- 大话G游 专题:手机病毒揭密
- ARP攻击防范与解决方案 路由故障处理手册
- Picasa中文版_Picasa教程 专题:清除流氓软件
- Firefox专题 seo搜索引擎优化专区
- 重装Windows必知的事情 装机之必备软件大行动
