首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

求设置http代理的代码如何写啊

2011-11-30 
求设置http代理的代码怎么写啊?Java codeimport java.applet.Appletimport java.awt.Frameimport java.a

求设置http代理的代码怎么写啊?

Java code
import java.applet.Applet;import java.awt.Frame;import java.awt.TextArea;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.MalformedURLException;import java.net.URL;public class test extends Applet {    URL url;        TextArea showarea = new TextArea("下载的数据");            public void init() {                String strurl = "http://www.163.com";                try {            url=new URL(strurl);        } catch (MalformedURLException e) {                    e.printStackTrace();        }                add(showarea);            }        public void start() {                InputStream filecon =null;        BufferedReader filedata =null;        String line;        try {            filecon = url.openStream();            filedata = new BufferedReader(new InputStreamReader(filecon));            while ((line = filedata.readLine())!=null) {                showarea.append(line+"\n");            }                                } catch (IOException e) {            // TODO 自动生成 catch 块            e.printStackTrace();        }            }    public static void main(String[] args) {         Frame f = new Frame("URL Test");                  Applet ap =new test();         ap.init();         f.add(ap);         f.addWindowListener(new WindowAdapter(){            @Override            public void windowClosing(WindowEvent arg0) {                // TODO 自动生成方法存根                System.exit(0);            }                      });        f.setSize(400,300);        f.setVisible(true);        ap.start();    }}


这是书上的一个下载页面内容的程序 但是我的浏览器有代理 程序中的设置代理的代码该怎么写啊?
我的代理设置192.168.1.254 :808 求代码
上午发的帖子不能恢复了 只好重发一个

[解决办法]
http://www.jiataiit.com/View_Articles.asp?ID=52
[解决办法]
java -Dhttp.proxyHost=localhost -Dhttp.proxyPort=8888 ....这样就可以指定代理为本机的8888为代理端口



访问URL.openConnection时就会自动使用上述代理,但是如果URL中是访问localhost的,则一定不通过代理
[解决办法]
Java code
   // 根据地址 url 打开 Http 连接   HttpURLConnection con = (HttpURLConnection)( new URL( url ) ).openConnection();   if (proxy.hASProxy()) {   // 注重: 假如 proxySet 为 false 时,依然设置了 proxyHost 和 proxyPort,代理设置仍会起作用。   // 假如 proxyPort 设置有问题,代理设置不会起作用。   System.getProperties().put( "proxySet", "true" );   System.getProperties().put( "proxyHost", proxy.getProxyHost() );   System.getProperties().put( "proxyPort", String.valueOf( proxy.getProxyPort() ) );     // 假如需要代理服务器验证,在 Http 请求头中加入 Proxy-Authorization 头,   // 格式为: "Basic " + ("代理服务器用户名:密码"的 BASE64 编码)   if (proxy.needAuth()) {   con.setRequestProperty( "Proxy-Authorization", "Basic " + Encoder.base64Encode( proxy.getProxyUser() + ":" + proxy.getProxyPass() ) );   }   } 

热点排行
Bad Request.