HTML初学(2)

表单

表单主要用于向服务器提交数据,标签是form,包含两个属性:action、method。

action=url指定一来处理提交表单的格式.它可以是一个URL地址(提交给程式)或一个电子邮件地址。

method=get或post指明提交表单的HTTP方法。(get和post方法的区别在后面会写)

1、文本框

<input type="text" name="" value="">(input是单标签)

2、密码框

<input type="password" name="" value="">

3、单选框

<input type="radio" name="sex" value="male" id="male">

<input type="radio" name="sex" value="male" id="female">

ps:将多个单选框的name值设成一样的就可以在他们中间只选一个(同名相斥)

4、复选框

<input type="checkbox"name="math"value="f">

5、下拉框

<select>

<option>1888</option>

</select>

6、隐藏域

<input type="hidden" name="hid" value="">

可以用来向服务器提交一些不想被其他人看到的数据。

7、文件上传

<input type="file" name="">>

8、提交按钮

<input type="submit" name="su" value="提交按钮">

9、重置按钮

<input type="reset" name="re" value="重置按钮">

10、普通按钮

<button type="submit"></button>

ps:在实际应用中我们并不推荐使用按钮,包括提交按钮和重置按钮,因为他们都有默认样式(很丑)我们往往推荐使用超链接加css制作按钮。

11、文本域

<textarea name="texts" cols="10" rows="10" value="" id=""></textarea>

post方法与get方法

Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。因为对资源的增,删,改,查操作,其实都可以通过GET/POST完成,所以我们只介绍post和get方法。

首先,我们先从表面上来看两者的区别

1、GET请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,参数之间以&相连,如果数据是英文字母/数字,原样发送,如果是空格,转换为+,如果是中文/其他字符,则直接把字符串用BASE64加密,如:%XX中的XX为该符号以16进制表示的ASCII。

POST把提交的数据则放置在是HTTP包的包体中。简单来说就是get是不加密的而post是加密的。

2、GET产生一个TCP数据包;POST产生两个TCP数据包。

对于GET方式的请求,浏览器会把http header和data一并发送出去,服务器响应200(返回数据);


而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)。

当然并不是所有浏览器都会在POST中发送两次包,Firefox就只发送一次。

下图是get方法

下图是post方法


是不是get快。

3、当然他还有很多区别,如:GET请求只能进行url编码,而POST支持多种编码方式。 GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。 GET请求在URL中传送的参数是有长度限制的,而POST没有有。 对参数的数据类型,GET只接受ASCII字符,而POST没有限制等等,不做过多解释了。

然后我们在从原理上看

根据HTTP规范,GET用于信息获取,而且应该是安全的和幂等的。即GET 请求一般不应产生副作用,不会修改,增加数据,不会影响资源的状态。

但根据HTTP规范,POST用于更新资源信息,可能修改变服务器上的资源的请求。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,948评论 18 139
  • 学习HTML的最佳网站没有之一http://www.w3school.com.cn/html/ 关于HTML/HT...
    Amyyy_阅读 2,131评论 0 16
  • 一、概念(载录于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434阅读 8,440评论 6 152
  • 我做过非常愚蠢的事情。 那就是: 把工作里的负面情绪发泄在亲人身上。 细细一想, 为何把笑脸都留给老板和客户, 却...
    张知微阅读 218评论 0 0
  • 这两天睡得特别好,昨天的梦境更让我记忆犹新。有三个元素,第一,老虎出现,别人都跑掉了,跑的远远的,但是我却没有,我...
    大红胡子叔叔阅读 157评论 0 2