request和response物件常用方法

2022-08-25 15:30:28 字數 1534 閱讀 1409

request:

request.getrequesturl(): 瀏覽器發出請求時的完整url,包括協議 主機名 埠(如果有)" 

request.getrequesturi(): 瀏覽器發出請求的資源名部分,去掉了協議和主機名" 

request.getquerystring(): 請求行中的引數部分,只能顯示以get方式發出的引數,post方式的看不到

request.getremoteaddr(): 瀏覽器所處於的客戶機的ip位址

request.getremotehost(): 瀏覽器所處於的客戶機的主機名

request.getremoteport(): 瀏覽器所處於的客戶機使用的網路埠

request.getlocaladdr(): 伺服器的ip位址

request.getlocalname(): 伺服器的主機名

request.getmethod(): 得到客戶機請求方式一般是get或者post

request.getparameter(): 是常見的方法,用於獲取單值的引數

request.getparametervalues(): 用於獲取具有多值的引數,比如註冊時候提交的 "hobits",可以是多選的。

request.getparametermap(): 用於遍歷所有的引數,並返回map型別。

response:設定響應編碼有兩種方式

1. response.setcontenttype("text/html; charset=utf-8");

2. response.setcharacterencoding("utf-8");

這兩種方式都需要在response.getwriter呼叫之前執行才能生效

他們的區別在於

1. response.setcontenttype("text/html; charset=utf-8");

不僅傳送到瀏覽器的內容會使用utf-8編碼,而且還通知瀏覽器使用utf-8編碼方式進行顯示。所以總能正常顯示中文

2. response.setcharacterencoding("utf-8");

僅僅是傳送的瀏覽器的內容是utf-8編碼的,至於瀏覽器是用哪種編碼方式顯示不管。 所以當瀏覽器的顯示編碼方式不是utf-8的時候,就會看到亂碼,需要手動再進行一次設定。

設定響應格式,設定響應編碼,設定響應內容

客戶端有兩種跳轉

302 表示臨時跳轉

301 表示永久性跳轉

302就是前面在客戶端跳轉章節用到過的

response.sendredirect("fail.html");

301要使用另外的手段:

response.setstatus(301);

response.setheader("location", "fail.html");

使用者感受不出這兩種跳轉的區別,但是可以借助火狐的除錯工具看到響應的頭資訊是:

301 moved permanently。

Burpsuite設定攔截response

一 burpsuite設定攔截http https 1,攔截修改request 首先進入proxy options intercept client requests設定request攔截的規則 如果不勾選intercept requests based on the following rules...

request和requestScope的區別

1 request物件通常用來接收從客戶端通過表單提交過來的資料,然後在servlet或者action中用request.getparameter 的方法獲取獲取引數內容 2 而requestscope通常是在servlet和action中通過request.setattribute 方法把資料放到...

Respons功能介紹 重定向以及特點

respons物件 功能 設定響應訊息 1.設定響應行 1.格式 http 1.1 200 ok 2.設定狀態碼 setstatus int sc 2.設定響應頭 setheader string name,string value 3.設定響應體 使用步驟 1.獲取輸出流 符輸出流 只能輸出字元資...