-
顯示位置
-
get 提交: 提交的信息都顯示在地址欄中。
-
post 提交: 提交的信息不顯示在地址欄中。
-
安全性
-
get 提交: 對於敏感的數據信息(如: 密碼)不安全。
-
post 提交: 對於敏感信息安全。
-
提交大數據
-
get 提交: 對於大數據不行,因為地址欄存儲體積有限。
-
post 提交: 可以提交大體積數據。
-
封裝信息
-
get 提交: 將信息封裝到了請求消息的請求行中。
-
post 提交: 將信息封裝到了請求體中。
-
服務端
-
如果出現將中文提交到 tomcat 服務器,服務器默認會用 iso8859-1 進行解碼會出現亂碼, 通過 iso8859-1 進行編碼,再用指定的中文碼表解碼即可。 這種方式對 get 和 post 提交都有效。
-
但是對於 post 提交方式提交的中文,還有另一種解決辦法, 就是直接使用服務端的一個對象, request 對象的 setCharacterEncoding 方法直接設置指定的中文碼表就可以將中文數據解析出來。 這個方法只對請求體中的數據進行解碼。
-
表單提交建議使用,post。
-
和服務端交互的三種方式
- 地址欄輸入 url 地址。get
- 超鏈接。get
- 表單。get & post
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>New Web Page</title>
</head>
<body>
<form action="http://192.168.0.103:8080" method="get"> <!--get 提交-->
<table border="10" bordercolor="#17D092" cellpadding=10 cellspacing="0" width="500">
<tr>
<th colspan="2">Registration</th>
</tr>
<tr>
<td>Username: </td>
<td>
<input type="text" name="Username">
</td>
</tr>
<tr>
<td>Password: </td>
<td>
<input type="password" name="Password">
</td>
</tr>
<tr>
<td>Password again: </td>
<td>
<input type="password" name="Password">
</td>
</tr>
<tr>
<td>Sex: </td>
<td>
<input type="radio" name="Sex" value="male">M <input type="radio" name="Sex" value="Female">F
</td>
</tr>
<tr>
<td>Tech: </td>
<td>
<input type="checkbox" name="Tech" value="Java">Java
<input type="checkbox" name="Tech" value="C++">C++
<input type="checkbox" name="Tech" value="C">C
<input type="checkbox" name="Tech" value="Python">Python
</td>
</tr>
<tr>
<td>Country: </td>
<td>
<select name="Country">
<option value="none">--Please Select--</option>
<option value="CN">China</option>
<option value="USA">USA</option>
<option value="UK">UK</option>
</select>
</td>
</tr>
<tr>
<th colspan="2">
<input type="reset" value="Reset"> <input type="submit" value="Submit">
</th>
</tr>
</table>
</form>
</body>
</html>