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

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

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

    guangnian0412's BLOG

    Java in my life

    常用鏈接

    統計

    積分與排名

    我關注的Blog

    最新評論

    [HttpClient] 創建一個HTTP POST 請求 (from Jakarta Commons cookbook 11.7 )

    問題:
    ??????? 你需要使用HTTP POST 方法來向一個servlet傳遞參數。

    討論:
    ??????? 創建一個 PostMethod 對象,然后調用 setParameter() 或 addParameter() 方法設置參數。 PostMethod 對象將會傳送一個 Content-Type 頭為 application/x-www-form-urlencoded 的請求,并且參數將在請求body中被傳送。在下列的例子中演示了用 PostMethod 對象傳遞參數的用法:
    import?org.apache.commons.httpclient.HttpClient;
    import?org.apache.commons.httpclient.HttpException;
    import?org.apache.commons.httpclient.NameValuePair;
    import?org.apache.commons.httpclient.methods.PostMethod;

    HttpClient?client?
    =?new?HttpClient(?);

    //?Create?POST?method
    String?url?=?"http://www.discursive.com/cgi-bin/jccook/param_list.cgi";
    PostMethod?method?
    =?new?PostMethod(?url?);

    //?Set?parameters?on?POST????
    method.setParameter(?"test1",?"Hello?World"?);
    method.addParameter(?
    "test2",?"This?is?a?Form?Submission"?);
    method.addParameter(?
    "Blah",?"Whoop"?);
    method.addParameter(?
    new?NameValuePair(?"Blah",?"Whoop2"?)?);

    //?Execute?and?print?response
    client.executeMethod(?method?);
    String?response?
    =?method.getResponseBodyAsString(?);
    System.out.println(?response?);

    method.releaseConnection(?);
    ??????
    param_list.cgi CGI腳本會對所以接收到的參數進行回顯,從下面的輸出中,你可以看到傳遞給CGI腳本的三個參數:
    These?are?the?parameters?I?received:

    test1:
    ??Hello?World
    test2:
    ??This?is?a?Form?Submission
    Blah:
    ??Whoop
    ??Whoop2
    ?????? 有幾種方法來在一個PostMethod對象中設置參數。最直接的方法就是調用setParameter()方法,并傳遞兩個字符串給它:參數的名稱和參數值。setParameter()方法將會替代任何已經存在的同名參數。但是,如果一個同名的參數已經存在一個PostMethod對象中,addParameter()將會加入另一個同名參數值;addParameter()方法同樣接受兩個String:參數名和參數值。另一種方法,這兩個方法同樣接受一個包裝了參數名和參數值的NameValuePair對象。在前面的例子中,通過addParameter()方法,用參數名Blah傳遞了兩個值,第一次用兩個String作為參數,第二次用一個NameValuePair對象作為參數。

    posted on 2006-04-11 22:41 guangnian 閱讀(6720) 評論(4)  編輯  收藏 所屬分類: Jakarta Commons

    評論

    # re: [HttpClient] 創建一個HTTP POST 請求 (from Jakarta Commons cookbook 11.7 ) 2007-01-10 15:19 happytian

    調用method.setParameter傳遞中文,需要encode么?
    用method.setRequestBody傳遞中文,encode一下,可以傳遞過去
    用method.setParameter傳遞怎么也傳不過去,請問什么原因?  回復  更多評論   

    # re: [HttpClient] 創建一個HTTP POST 請求 (from Jakarta Commons cookbook 11.7 ) 2007-01-11 00:15 guangnian

    @happytian
    不好意思,沒傳遞過中文的  回復  更多評論   

    # re: [HttpClient] 創建一個HTTP POST 請求 (from Jakarta Commons cookbook 11.7 ) 2007-10-28 11:53 中華信鴿

    學習了,寫的真好,如果是get呢?  回復  更多評論   

    # re: [HttpClient] 創建一個HTTP POST 請求 (from Jakarta Commons cookbook 11.7 ) 2011-09-23 11:25 makefu

    good!  回復  更多評論   

    主站蜘蛛池模板: 成全影视免费观看大全二| 日日麻批免费40分钟无码| 成人免费毛片视频| 日韩亚洲产在线观看| 99久久精品日本一区二区免费| 91精品国产亚洲爽啪在线影院| 99久久精品免费视频| 亚洲精品白色在线发布| 久草视频免费在线| 亚洲小说图区综合在线| 国产高清在线精品免费软件| 成人一级免费视频| 亚洲人成图片小说网站| 日本视频免费高清一本18| 久久亚洲美女精品国产精品| 免费影院未满十八勿进网站| 亚洲国产成人精品无码区二本 | 午夜网站免费版在线观看| 日本亚洲色大成网站www久久| 四虎www成人影院免费观看| 黄色一级视频免费| 国产精品国产亚洲精品看不卡| 69影院毛片免费观看视频在线| 亚洲一级毛片免费观看| 日本一线a视频免费观看| 高清永久免费观看| 亚洲美女视频一区| 国产免费一区二区三区VR| 亚洲天堂免费在线视频| 伊人久久综在合线亚洲2019| 好男人视频在线观看免费看片| h片在线观看免费| 中文文字幕文字幕亚洲色| 亚洲裸男gv网站| 18禁成人网站免费观看| 色欲aⅴ亚洲情无码AV蜜桃| 精品国产亚洲一区二区三区| 在线天堂免费观看.WWW| 免费观看一区二区三区| 国产午夜亚洲精品| 亚洲综合图色40p|