如何使用POST方法通过HTTP发送用户输入/表单数据

时间:2014-11-18 12:53:24

标签: forms http

我真的想了解用户输入是如何通过HTTP请求对象发送的,以及如何确定其格式。

假设html中有几个文本框,当我们使用POST方法提交此表单时,通常会形成类似name = tanmay& location = xyz的查询字符串,并在HTTP请求正文中发送。这一切都很好!

现在假设我没有查询字符串,而是希望将数据作为json对象发送,如{name:“tanmay”,location:“xyz”}那么我该怎么办?可以将'content-type'标题设置为'application / json'吧?但是我在哪里可以在我的应用程序中指定此标头。

在向客户端发送响应时是否指定了“content-type”标头?如果这是真的,那么这意味着何时构造HTTP请求然后从HTTP响应中读取'content-type'标头并且基于该请求主体被格式化。这是真的吗?

有人可以提供有关如何构建HTTP请求正文的更多信息吗?如何通过HTTP请求发送文件。

我知道当我们在服务器端创建响应对象时,我们可以完全控制,但看起来我无法控制http请求对象标头(我们只能解析它并从http请求中读取数据)。 / p>

1 个答案:

答案 0 :(得分:2)

HTTP仅提供having a POST body的方法,以及Content Types should be sent

的方法

构建请求的实际机制是用户代理,可能是一个Web浏览器,但可以很容易地成为手机应用程序等。

不使用JavaScript,Web浏览器通常支持application / x-www-form-urlencoded,multipart / form-data或text / plain(使用enctype attribute on the form指定)。当然,通过使用在客户端浏览器上运行的JavaScript代码,这可以格式化为代码所喜欢的任何内容,并将其发送到包括JSON。