項目中前台中文提交到后台就亂碼了,和學長找了N久都沒發現原因,最后發現是在頁面中雖然在form表單出寫上了method=“POST” 但是在網頁腳本那里設定按照GET發送請求,導致最后頁面的請求是以GET進行請求的.
既然解決了問題,那么順便來學一學POST請求與GET請求的區別.
我這里只羅列了三點
以下部分見解為網上復制,另外有一些自己的實際操作試驗.
1,GET顧名思義為獲取,POST就為郵遞發送的意思.但實際上GET也能傳送數據,只不過GET能傳送的數據量非常小,其要小於2048字節,也就是2KB。post傳送的數據量較大,一般被默認為不受限制。但理論上,IIS4中最大量為80KB,IIS5中為 100KB。
這也就是我們項目中出錯的原因.
下面附上亂碼的例子,亂碼的同學可以找找是不是這個錯誤:
頁面:簡單的form表單,然后輸出值棧中的name.
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'MyJsp.jsp' starting page</title>
</head>
<body>
<form action="test.action" method="POST"> <!--注意這里先用POST-->
<input type="text" name="name">
<input type="submit" value="提交">
</form>
<s:property value="name"/>
</body>
</html>
網頁演示:


