<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 297,  comments - 1618,  trackbacks - 0
          今天跟TiGERTiAN談到HttpURLConnection使用中的一個(gè)問題,就是當(dāng)連接到的那個(gè)地址重定向到另一個(gè)地址時(shí),怎么樣獲得那個(gè)重定向后的地址,弄了一下,找出了方法,結(jié)果起先我們兩個(gè)都沒想到,嘿嘿,在此記錄一下。
          HttpURLConnection是基于HTTP協(xié)議的,其底層通過socket通信實(shí)現(xiàn)。
          下面來看一個(gè)例子:
    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.io.BufferedReader;
    import java.io.InputStreamReader;

    /**
     * 網(wǎng)頁(yè)閱讀器.
     * 
    @author <a href="mailto:xiexingxing1121@126.com">AmigoXie</a>
     * Creation date: 2007-10-9 - 上午11:47:26
     
    */

    public class PageReader {
        
    //連接對(duì)象
        private static HttpURLConnection conn;

        
    /**
         * 根據(jù)url連接某地址,并返回返回碼.
         * 返回碼說明:
         *         0~200為正常情況,其中200為OK
         *         其余都為錯(cuò)誤的情況,具體請(qǐng)參見w3
         * 
    @param urlStr 需連接的url字符串
         
    */

        
    private int connect(String urlStr) throws Exception {
            URL url 
    = new URL(urlStr);
            conn 
    = (HttpURLConnection) url.openConnection();
            System.out.println(
    "返回碼: " + conn.getResponseCode());
            
    //如果定向的地址經(jīng)過重定向,
            
    //那么conn.getURL().toString()顯示的是重定向后的地址
            System.out.println(conn.getURL().toString());
            
    return conn.getResponseCode();
        }


        
    /**
         * 讀取網(wǎng)頁(yè)的內(nèi)容.
         * 
    @return 返回網(wǎng)頁(yè)的內(nèi)容
         
    */

        
    private String readContents() throws Exception {
            BufferedReader in 
    = null;
            StringBuffer sb 
    = new StringBuffer();
            in 
    = new BufferedReader(new InputStreamReader(conn
                    .getInputStream()));

            String inputLine;
            
    while ((inputLine = in.readLine()) != null{
                sb.append(inputLine);
                sb.append(
    "\n");
            }

            
    return sb.toString();
        }


        
    /**
         * 中斷連接.
         
    */

        
    private void disconnect() {
            conn.disconnect();
        }

        
        
    /**
         * 測(cè)試方法
         * 
    @param args
         * 
    @throws Exception
         
    */

        
    public static void main(String[] args) throws Exception {
            PageReader reader 
    = new PageReader();
            String url 
    = "http://hexapixel.com/download.php?file=com.hexapixel.widgets.ribbon.alphatest.src.jar";
            reader.connect(url);
            String content 
    = reader.readContents();
            System.out.println(
    "網(wǎng)頁(yè)內(nèi)容:" + content);
            reader.disconnect();
        }

    }

          呵呵,http://hexapixel.com/download.php?file=com.hexapixel.widgets.ribbon.alphatest.src.jar
         這個(gè)地址會(huì)進(jìn)行重定向,定向?yàn)椋?a >http://hexapixel.com/files/com.hexapixel.widgets.ribbon.alphatest.src.jar
         TiGERTiAN想要獲得的就是后面那個(gè)地址,運(yùn)行該程序后,大家可以看到,System.out.println(conn.getURL().toString());打出的就是這個(gè)地址,可惜TiGERTiAN和我開始都沒想到,看來是要多試試的。大家可以將那個(gè)url地址改成http://www.tkk7.com/amigoxie試試,這個(gè)程序?qū)崿F(xiàn)的是一個(gè)很簡(jiǎn)單的網(wǎng)頁(yè)閱讀器呵!
    posted on 2007-10-09 12:36 阿蜜果 閱讀(6104) 評(píng)論(10)  編輯  收藏 所屬分類: Java


    FeedBack:
    # re: HttpURLConnection使用中遇到的一個(gè)問題
    2007-10-09 13:03 | 千里冰封
    呵呵,搞起這個(gè)來了,有意思  回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題
    2007-10-09 13:07 | 阿蜜果
    @千里冰封
    是有個(gè)朋友用這個(gè)時(shí)發(fā)現(xiàn)的一個(gè)問題
    :)  回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題
    2007-10-09 13:17 | dennis
    HttpURLConnection默認(rèn)是允許重定向,你可以關(guān)閉

    conn.setFollowRedirects(false);  回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題
    2007-10-09 18:25 | TiGERTiAN
    嘿嘿。。。多虧Amigo姐姐。。不然要煩死我了。。。  回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題
    2007-10-10 16:28 | 阿蜜果
    @ dennis
    謝謝指點(diǎn)

    @ TiGERTiAN
    同學(xué)習(xí)嘛  回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題[未登錄]
    2007-10-10 23:10 | xmlspy
    直接使用commons-httpclient-3.1就可以了,比這個(gè)方便多了  回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題
    2007-10-11 08:48 | 阿蜜果
    @xmlspy
    恩,commons-httpclient-3.1包還不錯(cuò),不過我那個(gè)朋友沒有用那個(gè)包。它直接用HttpURLConnection時(shí)出現(xiàn)的這個(gè)問題  回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題[未登錄]
    2007-10-17 20:41 | yoyo
    code review:

    1)conn.getResponseCode(); 重構(gòu)為: int resultCode = conn.getResponseCode();

    2) StringBuffer sb = new StringBuffer(); 重構(gòu)為:
    StringBuffer sb = new StringBuffer(conn
    .getInputStream().length);
      回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題[未登錄]
    2007-10-18 08:35 | 阿蜜果
    @yoyo
    thank you very much
    :)  回復(fù)  更多評(píng)論
      
    # re: HttpURLConnection使用中遇到的一個(gè)問題
    2008-09-11 18:08 | hi
    urlconnection 能否將xml字符串發(fā)送到php端?我的qq 510823368  回復(fù)  更多評(píng)論
      
    <2007年10月>
    30123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

          生活將我們磨圓,是為了讓我們滾得更遠(yuǎn)——“圓”來如此。
          我的作品:
          玩轉(zhuǎn)Axure RP  (2015年12月出版)
          

          Power Designer系統(tǒng)分析與建模實(shí)戰(zhàn)  (2015年7月出版)
          
         Struts2+Hibernate3+Spring2   (2010年5月出版)
         

    留言簿(263)

    隨筆分類

    隨筆檔案

    文章分類

    相冊(cè)

    關(guān)注blog

    積分與排名

    • 積分 - 2294312
    • 排名 - 3

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 久久青草亚洲AV无码麻豆| 亚洲国产成人久久综合区| 亚洲最大中文字幕| 午夜不卡久久精品无码免费| 亚洲国产成人片在线观看| 美女无遮挡拍拍拍免费视频 | 亚洲AV无码1区2区久久| 国产啪精品视频网站免费尤物| 亚洲午夜久久久久久久久电影网| 国产vA免费精品高清在线观看| 狠狠色婷婷狠狠狠亚洲综合 | 一级毛片成人免费看a| 自拍偷自拍亚洲精品第1页| 国产在线精品一区免费香蕉 | 一二三四视频在线观看中文版免费| 亚洲国产精品成人精品小说 | 99久久综合国产精品免费| 国产精品亚洲午夜一区二区三区| 四虎免费在线观看| 看成年女人免费午夜视频| 亚洲人成在线播放网站| 亚洲毛片在线免费观看| 亚洲美国产亚洲AV| 综合亚洲伊人午夜网 | 大地资源免费更新在线播放| 九九精品国产亚洲AV日韩| 国产AⅤ无码专区亚洲AV| 91久久青青草原线免费| 亚洲人成网站999久久久综合| 亚洲成?v人片天堂网无码| 久久久久成人片免费观看蜜芽 | 亚洲欧洲中文日韩久久AV乱码| 岛国精品一区免费视频在线观看| 伊人久久综在合线亚洲2019| 亚洲人成网站免费播放| 一区在线免费观看| 亚洲一区二区三区久久| 亚洲美女高清一区二区三区| 亚洲免费电影网站| 一级人做人爰a全过程免费视频 | 亚洲成a人无码亚洲成av无码|