当前位置: 网学 > 编程文档 > JAVA > 正文

使用Java来编写通过代理访问的应用程序

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/16
下载{$ArticleTitle}原创论文样式

 注意:代码示例(Example.java)仅在JDK1.1.4下测试过。 

  后续技巧! 

  对于仍在使用JDK1.1.7(配合WebSphere3.0)的开发人员而言,将proxyHost和proxyPort设为系统属性不起作用;conn.getInputStream()或者返回连接超时,或者是找不到主机路径。但是,我使用接受Host和Port为参数的URL构造函数解决了这一问题(使用我的代理主机和端口): 

  publicURL(Stringprotocol,Stringhost,intport,Stringfile). 

  借助用户名和口令进行认证的方法不起作用。应将"Basic"置于认证字符串的开头;例如: 

  StringencodedPassword=base64Encode(password); 

  应该是: 

  StringencodedPassword="Basic"+base64Encode(password); 

  您也不必用一个单独的程序来进行64位编码。您可以使用sun.misc.BASE64Encoder()类。下面是完成这两处改动之后的代码: 

  System.getProperties().put("proxySet","true"); 

  System.getProperties().put("proxyHost",proxyHost); 

  System.getProperties().put("proxyPort",proxyPort); 

  StringauthString="userid:password"; 

  Stringauth="Basic"+newsun.misc.BASE64Encoder 

  ().encode(authString.getBytes()); 

  URLurl=newURL("http://java.sun.com/"); 

  URLConnectionconn=url.openConnection(); 

  conn.setRequestProperty("Proxy-Authorization",auth); 

  下面是使用socks4代理服务器的方法: 

  System.getProperty("socksProxySet",true); 

  System.getProperty("socksProxyHost",proxyHostName); 

  System.getProperty("socksProxyPort",proxyPort); 

  UsuallytheproxyPortforSocks4isport1080 

  接下来您就可以用Socks4进行连接了。

 

  • 上一篇资讯: [JAVA]
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号