国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JSP > 正文

jsp 中HttpClient中的POST方法實(shí)例詳解

2020-07-27 21:23:01
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

jsp 中HttpClient中的POST方法實(shí)例詳解

POST方法用來(lái)向目的服務(wù)器發(fā)出請(qǐng)求,要求它接受被附在請(qǐng)求后的實(shí)體,并把它當(dāng)作請(qǐng)求隊(duì)列(Request-Line)中請(qǐng)求URI所指定資源的附加新子項(xiàng)。POST被設(shè)計(jì)成用統(tǒng)一的方法實(shí)現(xiàn)下列功能:

  1. 對(duì)現(xiàn)有資源的注釋
  2. 向電子公告欄、新聞組,郵件列表或類似討論組發(fā)送消息
  3. 提交數(shù)據(jù)塊,如將表單的結(jié)果提交給數(shù)據(jù)處理過(guò)程
  4. 通過(guò)附加操作來(lái)擴(kuò)展數(shù)據(jù)庫(kù)

調(diào)用HttpClient中的PostMethod與GetMethod類似,除了設(shè)置PostMethod的實(shí)例與GetMethod有些不同之外,剩下的步驟都差不多。

構(gòu)造PostMethod之前的步驟都相同,與GetMethod一樣,構(gòu)造PostMethod也需要一個(gè)URI參數(shù),在本例中,登錄的地址是http://www.newsmth.NET/bbslogin2.PHP。在創(chuàng)建了PostMethod的實(shí)例之后,需要給method實(shí)例填充表單的值,在BBS的登錄表單中需要有兩個(gè)域,第一個(gè)是用戶名(域名叫id),第二個(gè)是密碼(域名叫passwd)。表單中的域用類NameValuePair來(lái)表示,該類的構(gòu)造函數(shù)第一個(gè)參數(shù)是域名,第二參數(shù)是該域的值;將表單所有的值設(shè)置到PostMethod中用方法setRequestBody。另外由于BBS登錄成功后會(huì)轉(zhuǎn)向另外一個(gè)頁(yè)面,但是HttpClient對(duì)于要求接受后繼服務(wù)的請(qǐng)求,比如POST和PUT,不支持自動(dòng)轉(zhuǎn)發(fā),因此需要自己對(duì)頁(yè)面轉(zhuǎn)向做處理。具體的頁(yè)面轉(zhuǎn)向處理請(qǐng)參見(jiàn)下面的"自動(dòng)轉(zhuǎn)向"部分。代碼如下:

String url = "http://www.newsmth.net/bbslogin2.php"; PostMethod postMethod = new PostMethod(url); // 填入各個(gè)表單域的值 NameValuePair[] data = { new NameValuePair("id", "youUserName"), new NameValuePair("passwd", "yourPwd") }; // 將表單的值放入postMethod中 postMethod.setRequestBody(data); // 執(zhí)行postMethod int statusCode = httpClient.executeMethod(postMethod); // HttpClient對(duì)于要求接受后繼服務(wù)的請(qǐng)求,象POST和PUT等不能自動(dòng)處理轉(zhuǎn)發(fā) // 301或者302 if (statusCode == HttpStatus.SC_MOVED_PERMANENTLY ||  statusCode == HttpStatus.SC_MOVED_TEMPORARILY) {   // 從頭中取出轉(zhuǎn)向的地址   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; } 

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 信丰县| 南部县| 甘谷县| 博兴县| 齐齐哈尔市| 高邑县| 晋江市| 三穗县| 盐城市| 太谷县| 柳江县| 伊金霍洛旗| 信宜市| 清镇市| 乡宁县| 普定县| 石屏县| 侯马市| 稷山县| 温泉县| 庆安县| 寿阳县| 封丘县| 无锡市| 碌曲县| 宁南县| 巢湖市| 威远县| 奉新县| 弋阳县| 汕头市| 阜阳市| 汾西县| 尉犁县| 大埔区| 望谟县| 西乌| 犍为县| 拉孜县| 建德市| 湘阴县|