BaoYaEr
HttpClient入門-基本功能的使用(POST方法)
POST方法
根據RFC2616,對POST的解釋如下:POST方法用來向目的服務器發出請求,要求它接受被附在請求后的實體,并把它當作請求隊列(Request-Line)中請求URI所指定資源的附加新子項。POST被設計成用統一的方法實現下列功能:
對現有資源的注釋(Annotation??of??existing??resources)??
向電子公告欄、新聞組,郵件列表或類似討論組發送消息??
提交數據塊,如將表單的結果提交給數據處理過程??
通過附加操作來擴展數據庫
調用HttpClient中的PostMethod與GetMethod類似,除了設置PostMethod的實例與GetMethod有些不同之外,剩下的步驟都差不多。在下面的例子中,省去了與GetMethod相同的步驟,只說明與上面不同的地方,并以登錄清華大學BBS為例子進行說明。
構造PostMethod之前的步驟都相同,與GetMethod一樣,構造PostMethod也需要一個URI參數,在本例中,登錄的地址是
http://www.newsmth.net/bbslogin2.php。在創建了PostMethod的實例之后,需要給method實例填充表單的值,在BBS的登錄表單中需要有兩個域,第一個是用戶名(域名叫id),第二個是密碼(域名叫passwd)。表單中的域用類NameValuePair來表示,該類的構造函數第一個參數是域名,第二參數是該域的值;將表單所有的值設置到PostMethod中用方法setRequestBody。另外由于BBS登錄成功后會轉向另外一個頁面,但是HttpClient對于要求接受后繼服務的請求,比如POST和PUT,不支持自動轉發,因此需要自己對頁面轉向做處理。具體的頁面轉向處理請參見下面的
"自動轉向"部分。代碼如下:??
String??url??
=
??
"
http://www.newsmth.net/bbslogin2.php
"
;?
PostMethod??postMethod??
=
??
new
??PostMethod(url);?
//
??填入各個表單域的值?
NameValuePair[]??data??
=
??
{??
new
??NameValuePair(
"
id
"
,??
"
youUserName
"
),?
new
??NameValuePair(
"
passwd
"
,??
"
yourPwd
"
)??}
;?
//
??將表單的值放入postMethod中?
postMethod.setRequestBody(data);?
//
??執行postMethod?
int
??statusCode??
=
??httpClient.executeMethod(postMethod);?
//
??HttpClient對于要求接受后繼服務的請求,象POST和PUT等不能自動處理轉發?
//
??301或者302?
if
??(statusCode??
==
??HttpStatus.SC_MOVED_PERMANENTLY??
||
???
statusCode??
==
??HttpStatus.SC_MOVED_TEMPORARILY)??
{?
????????
//
??從頭中取出轉向的地址?
????????Header??locationHeader??
=
??postMethod.getResponseHeader(
"
location
"
);?
????????String??location??
=
??
null
;?
????????
if
??(locationHeader??
!=
??
null
)??
{?
??????????location??
=
??locationHeader.getValue();?
??????????System.out.println(
"
The??page??was??redirected??to:
"
??
+
??location);?
????????}
??
else
??
{?
??????????System.err.println(
"
Location??field??value??is??null.
"
);?
????????}
?
????????
return
;?
}
?
發表于 2006-12-19 11:30
大田斗
閱讀(3844)
評論(0)
編輯
收藏
所屬分類:
Strtus
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
struts中dispathAction
Java實現隨機驗證碼功能實例
struts的ActionMessage以及html:errors不用資源文件
分頁pager-taglib使用指南
ServletContextListener || HttpSessionListener 的用法
Struts標簽庫
Struts結合Velocity開發web應用
使用struts-menu制作樹型菜單實例
Struts filter使用學習筆記
struts 的log4j配置
<
2025年7月
>
日
一
二
三
四
五
六
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
導航
BlogJava
首頁
發新隨筆
發新文章
聯系
聚合
管理
統計
隨筆: 32
文章: 427
評論: 144
引用: 0
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(5)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2008年12月 (1)
2008年4月 (2)
2008年2月 (1)
2008年1月 (1)
2007年12月 (3)
2007年11月 (1)
2007年10月 (3)
2007年7月 (2)
2007年6月 (1)
2007年4月 (2)
2007年3月 (3)
2007年2月 (5)
2007年1月 (3)
2006年12月 (4)
文章分類
axis(6)
(rss)
eclipse(7)
(rss)
Hibernate(30)
(rss)
html/js/css(107)
(rss)
java(106)
(rss)
linux(7)
(rss)
Lucene(7)
(rss)
spring(36)
(rss)
Spring CLOUd(1)
(rss)
Strtus(30)
(rss)
其它(48)
(rss)
開源opensource(48)
(rss)
數據庫DateBase(30)
(rss)
設計模式(12)
(rss)
文章檔案
2018年8月 (1)
2012年5月 (1)
2012年4月 (2)
2011年7月 (6)
2010年3月 (1)
2010年2月 (1)
2010年1月 (3)
2009年12月 (1)
2009年10月 (1)
2009年8月 (3)
2009年3月 (1)
2009年2月 (1)
2008年12月 (3)
2008年11月 (10)
2008年10月 (3)
2008年9月 (2)
2008年8月 (2)
2008年7月 (4)
2008年6月 (13)
2008年5月 (15)
2008年4月 (9)
2008年3月 (10)
2008年1月 (18)
2007年12月 (33)
2007年11月 (6)
2007年10月 (18)
2007年9月 (10)
2007年8月 (18)
2007年7月 (15)
2007年6月 (25)
2007年5月 (19)
2007年4月 (26)
2007年3月 (38)
2007年2月 (33)
2007年1月 (27)
2006年12月 (27)
2006年11月 (12)
java
Ajax特效網站
cndiy nio
GRO
Hani Suleiman's blog
Java之路
java論壇
J道
mule
mule 入門
oksonic(動畫教程)
一路由你
中國eclipse
八進制
在線源碼
多線程實戰
天火
小米的blogjava
幻境伯克----jface/swt
很全的博克-強
每日一得
滿江紅
邢紅瑞
飛翔
鳥詩選(js)
鳥食軒 (dhtml)
工具
apache中文手冊
extjs學習
iconFindre
java 安全
javaresearch
java技巧網
js之王
matrix(study)
prototype api
spring中文
北京IT企業速查
在線流程圖工具
雅虎翻譯
朋友
Happyshow
hibernate異常
skywalker
sunshow
xf
亞光
同云博客
小弟鵬
張玉磊
昕
李陽
黃鳴
搜索
積分與排名
積分 - 1104410
排名 - 28
最新評論
1.?re: hibernate.cfg.xml配置
好全啊 .. 棒棒噠 ~ !
--junqinag.yang
2.?re: Quartz任務調度快速入門
我現在來看還是覺得不錯
--小任
3.?re: js中this的總結
評論內容較長,點擊標題查看
--pam
4.?re: Quartz任務調度快速入門
樓主辛苦
--yd
5.?re: Quartz任務調度快速入門
頂了,內容寫的很好
--sen
閱讀排行榜
1.?網頁不緩存(3563)
2.?Form嵌套引起的問題 (2867)
3.?解決IE下CSS背景圖片閃爍的Bug(2458)
4.?Spring AOP的動態載入原理(2416)
5.?如何制作漂亮的Excel表格(2057)
評論排行榜
1.?北京戶口--吃官司(5)
2.?開始→運行→輸入的命令集錦(3)
3.?讓網頁上的所有圖片動起來(2)
4.?Dom4j 編碼問題徹底解決 (1)
5.?心情不爽(1)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 大田斗
主站蜘蛛池模板:
文昌市
|
平度市
|
北海市
|
米林县
|
鄂州市
|
枣强县
|
清流县
|
神木县
|
瑞金市
|
米林县
|
大港区
|
泰兴市
|
利辛县
|
咸丰县
|
鹤峰县
|
钟祥市
|
梁山县
|
樟树市
|
即墨市
|
湖北省
|
黎川县
|
海阳市
|
手游
|
乌兰察布市
|
西乌珠穆沁旗
|
抚州市
|
文安县
|
甘德县
|
商城县
|
安新县
|
长宁县
|
万荣县
|
镇远县
|
盐城市
|
中江县
|
青河县
|
巴林左旗
|
宁远县
|
化州市
|
绥德县
|
古浪县
|