怎么用chttpconnection来发送post信息

HTTP 协议其实就是规定了 client 和 server 之间的茭互逻辑、数据打包格式。当然完整的协议会涉及到方方面面,内容还挺多的

C 语言的话,可以参考 libcurl 的实现

}

在HTTP GET请求中参数作为查询字符串發送:

α参数=值&安培;还=另一

在HTTP POST请求中,参数不会与URI一起发送

价值在哪里? 在请求标题中 在请求正文中? 它是什么样子的

值以请求囸文中的内容类型指定的格式发送。

通常内容类型为multipart/form-data因此请求正文使用与查询字符串相同的格式:

当您在表单中使用文件上载时,您使鼡multipart/form-data编码它具有不同的格式。 它更复杂但你通常不需要关心它的样子,所以我不会展示一个例子但知道它存在可能会很好。

内容放在HTTP標头之后 HTTP POST的格式是具有HTTP标头,后跟空行后跟请求主体。 POST变量作为键值对存储在正文中

您可以在HTTP Post的原始内容中看到这一点,如下所示:

请注意:HTTP / 1.1包含在左侧的#32(空格)和右侧的#10(换行符)

HTTP POST中的表单值在请求正文中以与查询字符串相同的格式发送。

有关更多信息请参閱规范。

获取:这是对服务器的默认Request Body请求用于从服务器检索数据,并在URL Encoded中的URL Encoded之后查询字符串用于检索唯一资源

这里Request Body是传递的查询字符串值。

POST:它用于安全地将数据发送到服务器所以需要的任何东西这是Request Body请求的格式

Request Body中,发送到服务器的值通常会附加到查询字符串中的基本URL这会使您的数据被黑客攻击(这是几天后Facebook出现凭据的问题)这就是为什么URL Encoded是 用于将数据发送到服务器使用Request Headers将数据发送到更安全的服務器,因为它隐藏了您的数据加上它从字段中获取数据计算它们的长度并将它们添加到Request Body以获取content-length并且没有重要意义 数据直接附加到URL

既然您的請求是安全的发送到服务器的任何值都可以在Request Body中发送,因为名称暗示它将包含用户想要发送的数据(并且它以URL Encoded格式发送)Request Headers将保留请求 通过将Request Body中的值与Request Headers进行比较来确保安全

您可以使用Google Developer Tools的网络部分查看有关如何向服务器发出请求的基本信息。

}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信