導航:首頁 > 編程語言 > javahttpbody

javahttpbody

發布時間:2025-05-26 03:15:26

1. java 怎麼修改servlet的請求頭信息

首先,我們先看一下http的頭信息到底是什麼:
HTTP(HyperTextTransferProtocol) 即超文本傳輸協議,目前網頁傳輸的的通用協議。HTTP協議採用了請求/響應模型,瀏覽器或其他客戶端發出請求,伺服器給與響應。就整個網路資源傳輸而 言,包括message-header和message-body兩部分。首先傳遞message- header,即http header消息。http header 消息通常被分為4個部分: general header, request header, response header, entity header。但是這種分法就理解而言,感覺界限不太明確,根據日常使用,大體分為Request和Response兩部分。
在通常的servlet/jsp應用中,我們只是從http的header中取得信息,如果要設置信息,需要用到HttpClient,具體的設置方法如下:
HttpResponse response = null;
HttpGet get = new HttpGet(url);
get.addHeader("Accept", "text/html");
get.addHeader("Accept-Charset", "utf-8");
get.addHeader("Accept-Encoding", "gzip");
get.addHeader("Accept-Language", "en-US,en");
get.addHeader("User-Agent", "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.160 Safari/537.22");

2. HttpPost發送字元串到伺服器,伺服器接收代碼並顯示怎麼寫Java代碼

伺服器端接收客戶端的請求的話,需要在伺服器端的java文件實現HttpServlet這個介面,並且在web.xml里配置一個客戶端的請求攔截。

web.xml里的代碼里添加

<servlet>
<servlet-name>testServlet</servlet-name><!--這個名字可以自己定-->
<servlet-class>com.sun.testServlet</servlet-class><!--這里是你需要接收客戶端請求的那個類以及包名,也就是下面攔截到的url會轉發到的那個類-->
</servlet>
<servlet-mapping>
<servlet-name>testServlet</servlet-name><!--和上面的name需要一樣-->
<url-pattern>/*</url-pattern><!--什麼類型的客戶端請求會被攔截,/*就是全攔截了-->
</servlet-mapping>

然後再伺服器端的類文件,要實現 HttpServlet這個介面。並把doGet()方法和doPost()方法重寫。

這兩種方法分別對應的是客戶端的get請求和post請求的處理,你的是post請求的話,就在doPost()方法內,寫你的業務。

然後再用下面兩句話,設置你要返回客戶端的數據。


//這是設置你要返回去的數據。value才是你的數據,key是標簽。

request.setAttribute("key", "value");


//這是設置你要返回去test.jsp這張頁面。

request.getRequestDispatcher("test.jsp").forward(request, response);


不知道你是不是這個意思,你可以再去看看相關servlet方面的知識,


關於客戶端和伺服器端大概也就是有個servlet作為請求的攔截


然後經過相關判斷後,選擇性的傳到伺服器的相應類裡面。


再經過類裡面的業務,把得到需要的數據回傳到指定的頁面上。

3. java怎樣獲取http請求的body

讀取Body使用request.getReader(),但getReader獲取的是,需要把它轉換成字元串,下面是轉換的方法
public class TestController {
@RequestMapping("/a")
protected void doPost(HttpServletRequest request,
HttpServletResponse response, BufferedReader br)
throws ServletException, IOException {
//Header部分
System.out.print(request.getHeaderNames());
Enumeration<?> enum1 = request.getHeaderNames();
while (enum1.hasMoreElements()) {
String key = (String) enum1.nextElement();
String value = request.getHeader(key);
System.out.println(key + "\t" + value);
}
//body部分
String inputLine;
String str = "";
try {
while ((inputLine = br.readLine()) != null) {
str += inputLine;
}
br.close();
} catch (IOException e) {
System.out.println("IOException: " + e);
}
System.out.println("str:" + str);
}

閱讀全文

與javahttpbody相關的資料

熱點內容
編程軟體哪個需要錢 瀏覽:875
如何看自己的ie版本 瀏覽:492
2008r2用戶文件夾路徑 瀏覽:755
winzip文件壓縮成多個小文件 瀏覽:562
勒索病毒文件是哪個 瀏覽:855
群聊機器人代碼 瀏覽:728
用什麼充電app最便宜 瀏覽:531
jspif語句 瀏覽:896
你刪除的照片會在哪個文件夾 瀏覽:518
編程如何設置 瀏覽:393
微信jssdk分享qq空間 瀏覽:840
修改ipadid密碼忘記了怎麼辦 瀏覽:938
紙質文件拍攝視頻 瀏覽:560
今天的疫情數據怎麼樣 瀏覽:491
出國旅行不會英語需要什麼app 瀏覽:351
移動機用聯通資料庫 瀏覽:710
啟動器配置文件丟失怎麼能 瀏覽:686
如何壓縮王者榮耀文件 瀏覽:351
抖音哪些人在哪裡統計數據 瀏覽:662
影視APP源碼加教程 瀏覽:479

友情鏈接