sunfruit[請訪問http://www.fruitres.cn]

          --我相信JAVA能走得更遠 QQ:316228067

          導航

          <2007年3月>
          25262728123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          統計

          公告

          個人寫的作品會盡量附上代碼,大家使用發現問題就指出,交流第一嘛  QQ:316228067

          常用鏈接

          留言簿(13)

          隨筆分類(121)

          隨筆檔案(105)

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          [原創]通過HttpURLConnection如何使用代理服務器連接公網

              --sunfruit

              在openConnection之前加上
              Properties   prop   =   System.getProperties();
              System.getProperties().put("proxySet","true");
              // 設置http訪問要使用的代理服務器的地址
              prop.setProperty("http.proxyHost","xxxxxxx");
              // 設置http訪問要使用的代理服務器的端口
              prop.setProperty("http.proxyPort","xxxxx");
             
              然后并不像有的貼子說的那樣添加
              prop.setProperty("http.proxyUser","xxxxxxxx");
              prop.setProperty("http.proxyPassword","xxxxx");
              添加這樣的內容是不行的,而是將"username:password"進行base64編碼,具體代碼如下
              String authentication = "username:password";
              String encodedLogin = new BASE64Encoder().encode(authentication.getBytes());
              httpurlconnection.setRequestProperty("Proxy-Authorization", " Basic " + encodedLogin);
             
              注意BASE64Encoder().encode(authentication.getBytes());這里不能使用BASE64Encoder().encodeBuffer(authentication.getBytes())否則報錯
              具體原因參考sun公布的JDK BUG , Bug ID:  4615330  http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4615330

          posted on 2007-03-22 10:41 sunfruit 閱讀(1784) 評論(0)  編輯  收藏 所屬分類: JAVA SE & EE

          主站蜘蛛池模板: 苏州市| 长寿区| 巴楚县| 夏邑县| 雅江县| 茂名市| 林周县| 乾安县| 横山县| 阿城市| 景东| 宁城县| 寿宁县| 黔江区| 庆城县| 集贤县| 大连市| 长治县| 元氏县| 尚义县| 威信县| 百色市| 绍兴市| 孟村| 巴彦县| 定边县| 三门县| 平凉市| 兴安县| 孟村| 东阿县| 吴忠市| 登封市| 牟定县| 澳门| 黄石市| 讷河市| 江门市| 刚察县| 抚顺市| 南通市|