表單是我們平常編寫Web應用常用的工具,透過表單我們可以方便的讓客戶端和伺服器進行資料的互動。對於以前開發過Web的使用者來說表單都非常熟悉,但是對於C/C++程式設計師來說,這可能是一個有些陌生的東西,那麼什麼是表單呢?
表單是一個包含表單元素的區域。表單元素(比如:文字域、下拉列表、單選框、複選框等等)是允許使用者在表單中輸入資訊的元素。表單使用表單標籤(<form>)定義。
<form>
...
input 元素
...
</form>
Go裡面對於form處理已經有很方便的方法了,在Request裡面有專門的form處理,可以很方便的整合到Web開發裡面來,4.1小節裡面將講解Go如何處理表單的輸入。由於不能信任任何使用者的輸入,所以我們需要對這些輸入進行有效性驗證,4.2小節將就如何進行一些普通的驗證進行詳細的示範。
HTTP協議是一種無狀態的協議,那麼如何才能辨別是否是同一個使用者呢?同時又如何保證一個表單不出現多次遞交的情況呢?4.3和4.4小節裡面將對cookie(cookie是儲存在客戶端的資訊,能夠每次透過header和伺服器進行互動的資料)等進行詳細講解。
表單還有一個很大的功能就是能夠上傳檔案,那麼Go是如何處理檔案上傳的呢?針對大檔案上傳我們如何有效的處理呢?4.5小節我們將一起學習Go處理檔案上傳的知識。