HTML-form表單學(xué)習(xí)筆記

一. post和get方式提交數(shù)據(jù)的區(qū)別

  • 安全性:get提交的數(shù)據(jù)url可以看得到茁裙,post看不到坛掠,并且get提交的數(shù)據(jù)會(huì)在瀏覽器的記錄中,安全性不好
  • 提交原理:get是以key=value的形式拼接到url中系宫,post講數(shù)據(jù)放入http請(qǐng)求體中
  • 數(shù)據(jù)量:get提交的數(shù)據(jù)受瀏覽器限制铆铆,url不可能拼接無(wú)限長(zhǎng),post理論上無(wú)限制傀顾,受服務(wù)器限制
  • 使用場(chǎng)景:get 重在 "要"數(shù)據(jù),get得到的數(shù)據(jù)可以暫時(shí)緩存起來(lái), post 重在"給"數(shù)據(jù)

二.form表單中的常用標(biāo)簽及其屬性

1.form標(biāo)簽
<form action="" method="" target="_target" enctype=""></form>

說(shuō)明:
action:表單提交的地址
method:提交表單的方法襟铭,常見(jiàn)的有post,get,(不支持put蝌矛,patch道批,delete)
target:在何處打開(kāi)url,例如_target為在新頁(yè)面打開(kāi)提交的地址
enctype:加密類型入撒,有application/x-www-form-urlencoded 隆豹,text/plain ,multipart/form-data

2.input標(biāo)簽-text類型
<label for="username">用戶名:</label>
<input type="text" placeholder="username" name="username" value="林克">

說(shuō)明:
<label>標(biāo)簽的作用:擴(kuò)大選擇范圍茅逮,鼠標(biāo)點(diǎn)擊用戶名三個(gè)字也可以將輸入框變成focus狀態(tài)
placeholder:在輸入框中顯示一個(gè)提示璃赡,沒(méi)有其他作用
name: 提交數(shù)據(jù)時(shí),標(biāo)識(shí)該文本框的key
value:提交數(shù)據(jù)時(shí)献雅,標(biāo)識(shí)該文本框的默認(rèn)value碉考,修改后value會(huì)變成輸入的數(shù)據(jù)

3.input標(biāo)簽-submit類型
<input type="submit" value="提交">

說(shuō)明:
該標(biāo)簽會(huì)顯示一個(gè)按鈕,點(diǎn)擊會(huì)提交該標(biāo)簽所在form表單下的數(shù)據(jù)挺身,value為該按鈕上顯示的字
注: <button>提交</button>和該標(biāo)簽效果一樣侯谁,點(diǎn)擊會(huì)提交;而<input type="button" value="提交">點(diǎn)擊不會(huì)有提交效果

4.input標(biāo)簽-radio(單選框)章钾,checkbox(復(fù)選框)類型
<input type="radio" name="sex" value="boy" checked>
<input type="radio" name="sex" value="girl">
<input type="checkbox" name="hobby" value="籃球" checked>
<input type="checkbox" name="hobby" value="足球">

說(shuō)明:
name相同的radio即為一組墙贱,一組內(nèi)的單選框只能選擇一個(gè)
checked:表示默認(rèn)選擇的單選框

5.其他input標(biāo)簽類型
    <input type="date">                             <!--日歷-->
    <input type="file" accept="img/png">            <!--選擇文件,accept設(shè)置只能接受該文件類型-->
    <input type="number">                           <!--只能輸入數(shù)字-->
    <input type="search">                           <!--輸入完內(nèi)容贱傀,回車即可提交-->
    <input type="email">                            <!--只有輸入的文本為email形式才能提交-->
    <input type="url">                              <!--只有輸入的文本為url形式才能提交-->
    <input type="range">                            <!--范圍選擇條-->
    <input type="color">                            <!--選擇顏色-->
    <input type="reset" value="重置">               <!--重置表單中的所有內(nèi)容為初始默認(rèn)值-->
    <input type="hidden" name="csrf" value="66666"> <!--為了解決CSRF安全問(wèn)題,詳見(jiàn)三.補(bǔ)充-->
6.select標(biāo)簽
<select name="addr">
    <option value="shanghai">上海</option>
    <option value="shanghai">北京</option>
    <option value="shanghai" selected>南京</option>
</select>

說(shuō)明:
name:選擇列表的提交的key惨撇,value:選擇列表提交的value
option:代表選擇列表的每一項(xiàng)
上海,北京府寒,南京:選擇列表每一項(xiàng)顯示的內(nèi)容
selected:默認(rèn)選中的選擇列表項(xiàng)

7.textare標(biāo)簽
<textare name="comment"> 
此處可以輸入多行內(nèi)容
</textare>

三.補(bǔ)充

1.語(yǔ)義化HTML5標(biāo)簽

選擇合適的標(biāo)簽魁衙、使用合理的代碼結(jié)構(gòu),便于開(kāi)發(fā)者和視覺(jué)障礙人士閱讀株搔,同時(shí)讓瀏覽器的爬蟲和機(jī)器很好地解析剖淀。

  • <header>:頁(yè)頭
  • <nav>:導(dǎo)航欄
  • <main>:主內(nèi)容 ,后面一般接 <article>,<section>,<div>
  • <aside>:側(cè)邊欄
  • <footer>:頁(yè)尾
2.CSRF 攻擊是什么邪狞?如何防范?

中文名:跨站請(qǐng)求偽造祷蝌。其原理是攻擊者構(gòu)造網(wǎng)站后臺(tái)某個(gè)功能接口的請(qǐng)求地址,誘導(dǎo)用戶去點(diǎn)擊或者用特殊方法讓該請(qǐng)求地址自動(dòng)加載帆卓。用戶在登錄狀態(tài)下這個(gè)請(qǐng)求被服務(wù)端接收后會(huì)被誤以為是用戶合法的操作。對(duì)于 GET 形式的接口地址可輕易被攻擊米丘,對(duì)于 POST 形式的接口地址也不是百分百安全剑令,攻擊者可誘導(dǎo)用戶進(jìn)入帶 Form 表單可用POST方式提交參數(shù)的頁(yè)面。
防范:
服務(wù)端在收到路由請(qǐng)求時(shí)拄查,生成一個(gè)隨機(jī)數(shù)吁津,在渲染請(qǐng)求頁(yè)面時(shí)把隨機(jī)數(shù)埋入頁(yè)面(一般埋入 form 表單內(nèi),)
1.服務(wù)端設(shè)置setCookie,把該隨機(jī)數(shù)作為cookie或者session種入用戶瀏覽器
2.當(dāng)用戶發(fā)送 GET 或者 POST 請(qǐng)求時(shí)帶上_csrf_token參數(shù)(對(duì)于 Form 表單直接提交即可碍脏,因?yàn)闀?huì)自動(dòng)把當(dāng)3.前表單內(nèi)所有的 input 提交給后臺(tái)梭依,包括_csrf_token)
4.后臺(tái)在接受到請(qǐng)求后解析請(qǐng)求的cookie獲取_csrf_token的值,然后和用戶請(qǐng)求提交的_csrf_token做個(gè)比較典尾,如果相等表示請(qǐng)求是合法的役拴。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市钾埂,隨后出現(xiàn)的幾起案子河闰,更是在濱河造成了極大的恐慌,老刑警劉巖褥紫,帶你破解...
    沈念sama閱讀 223,207評(píng)論 6 521
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件姜性,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡髓考,警方通過(guò)查閱死者的電腦和手機(jī)部念,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,455評(píng)論 3 400
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)氨菇,“玉大人印机,你說(shuō)我怎么就攤上這事∶偶荩” “怎么了射赛?”我有些...
    開(kāi)封第一講書人閱讀 170,031評(píng)論 0 366
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)奶是。 經(jīng)常有香客問(wèn)我楣责,道長(zhǎng),這世上最難降的妖魔是什么聂沙? 我笑而不...
    開(kāi)封第一講書人閱讀 60,334評(píng)論 1 300
  • 正文 為了忘掉前任秆麸,我火速辦了婚禮,結(jié)果婚禮上及汉,老公的妹妹穿的比我還像新娘沮趣。我一直安慰自己,他們只是感情好坷随,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,322評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布房铭。 她就那樣靜靜地躺著,像睡著了一般温眉。 火紅的嫁衣襯著肌膚如雪缸匪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 52,895評(píng)論 1 314
  • 那天类溢,我揣著相機(jī)與錄音凌蔬,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛砂心,可吹牛的內(nèi)容都是我干的懈词。 我是一名探鬼主播,決...
    沈念sama閱讀 41,300評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼辩诞,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼坎弯!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起躁倒,我...
    開(kāi)封第一講書人閱讀 40,264評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤荞怒,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后秧秉,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體褐桌,經(jīng)...
    沈念sama閱讀 46,784評(píng)論 1 321
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,870評(píng)論 3 343
  • 正文 我和宋清朗相戀三年象迎,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了荧嵌。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,989評(píng)論 1 354
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡砾淌,死狀恐怖啦撮,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情汪厨,我是刑警寧澤赃春,帶...
    沈念sama閱讀 36,649評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站劫乱,受9級(jí)特大地震影響织中,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜衷戈,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,331評(píng)論 3 336
  • 文/蒙蒙 一狭吼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧殖妇,春花似錦刁笙、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,814評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至蔚润,卻和暖如春磅氨,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背嫡纠。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,940評(píng)論 1 275
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人除盏。 一個(gè)月前我還...
    沈念sama閱讀 49,452評(píng)論 3 379
  • 正文 我出身青樓叉橱,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親者蠕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子窃祝,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,995評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • <input>標(biāo)簽 標(biāo)簽用于搜集用戶信息,根據(jù)不同的type屬性值踱侣,輸入字段擁有很多種形式粪小。輸入字段可以是文本字段...
    _空空閱讀 4,030評(píng)論 0 3
  • 1.動(dòng)手 form 表單table 表格 2. <form>表單元素 1) 簡(jiǎn)述: 元素是塊級(jí)元素,其開(kāi)始標(biāo)簽和結(jié)...
    _Dot912閱讀 2,027評(píng)論 2 8
  • 主要內(nèi)容: form表單的作用及常用的input 標(biāo)簽介紹,GET和 POST的區(qū)別抡句。 form表單的作用及常用的...
    苦瓜_6閱讀 702評(píng)論 0 1
  • HTML表單HTML表單用于搜集用戶輸入HTML表單常用屬性及說(shuō)明:屬性描述accept-charset規(guī)定在被提...
    Lv_0閱讀 490評(píng)論 0 1
  • 1.form表單有什么作用探膊?有哪些常用的input 標(biāo)簽,分別有什么作用待榔? HTML 表單用于接收不同類型的用戶輸...
    大胡子歌歌閱讀 891評(píng)論 0 1