表單提交原理

2021-09-01 18:12:10 字數 833 閱讀 1656

表單提交原理

1.http是如何提交表單的

當表單的enctype被設定成multipart/form-data後, comment文字域的內容可以通過request.form[「comment」]來獲得,檔案f的內容只能通過request.inputstream來獲得,但是request.inputstream並不是只包含了檔案的內容,還包括了comment文字域的內容,看看列印出inputstream的內容:

------webkitformboundaryqqpaxgr2pgik6uyy

content-disposition: form-data; name="f"; filename="hello.txt"

hello!!!

------webkitformboundaryqqpaxgr2pgik6uyy

content-disposition: form-data; name="comment"

檔案上傳

------webkitformboundaryqqpaxgr2pgik6uyy

content-disposition: form-data; name="buttom"

上傳------webkitformboundaryqqpaxgr2pgik6uyy--

可以看到提交的表單資料是混合了所有請求引數的資料。 從上面表單資料的內容可以看到,每個請求引數都以----開頭的行開始,後面跟的字元不同的瀏覽器不同。接下來倆行是引數的描述,然後空行後接引數的值(對檔案input稍微有所不同,即空行後是附加的檔案內容)。表單資料以--開始和結尾的行結束。

明白了表單資料的格式後,就可以程式設計解析表單資料了,我們可以把檔案從表單資料中解析出來。

頁面表單提交的原理

1.http是如何提交表單的 標籤的屬性enctype設定以何種編碼方式提交表單資料。可選的值有三個 這是預設的編碼方式。它只處理表單域裡的value屬性值,採用這種變法方式的表單會將表單域的值處理成url方式。multipart form data 這種編碼方式會以二進位製流的方式來處理表單資料,...

php 表單令牌防止重複提交原理

在生成表單的時候,為防止表單重複提交。在form表單中新增乙個隱藏的input標籤來存放令牌,等到提交的時候,和表單一起提交。提交以後和生成的session值作比較,通過這種方式來達到防止重複提交的目的。簡要 如下,例子,session方法 if post else session token md...

Flex HTTPService 提交表單

方法1 採用urlvariables物件 import mx.controls.alert import mx.rpc.events.resultevent 對提交給後台的引數進行utf 8的編碼處理 方法2 採用,同時也演示了mx state的用法,來自網上 import mx.rpc.event...