Go Web开发三:HTML表单

2018-06-26  本文已影响5人  狂奔的胖蜗牛

1.HTML表单

大多数情况下,POST请求是通过HTML表单发送的,通常会是如下:

<form action="/process" method="post">
    <input type="text" name="first_name"/>
    <input type="text" name="last_name"/>
    <input type="submit">
</form>

用浏览器打开为:


屏幕快照 2018-06-26 下午8.30.45.png

form标签的type可以是文本行,文本框,单选按钮,复选框,文件上传等,用户把想要传递给服务器的数据输入到元素里。当按下发送提交按钮,数据就会被发送至服务器。

用户输入的数据会以键值对的形式记录在请求的body中,然后以HTTP POST请求的方式发送给服务器。

2.表单的格式

服务端解析POST请求时,需要知道这些键值对在请求body中是如何格式化的,表单的enctype决定了POST请求在发送键值对时将使用何种格式。

<form action="/process" method="post" enctype="application/x-www-form-urlencoded">
    <input type="text" name="first_name"/>
    <input type="text" name="last_name"/>
    <input type="submit">
</form>

格式如下:

如果表单传送的是简单的文本数据,使用RUL编码好。如果是大量数据,编入文件上传,则使用2比较好。

3.GET请求发送表单

实际上,GET请求也是可以发送表单的。所以可以这样写:

<form action="/process" method="get">
    <input type="text" name="first_name"/>
    <input type="text" name="last_name"/>
    <input type="submit">
</form>

GET请求会自动把表单数据包含在URL里面,不通过body传递。

上一篇 下一篇

猜你喜欢

热点阅读