HTTP请求请求体
http请求传输方式是ASCII码传输,一般包含三个部分
状态行/请求头/消息主体
<method> <request-URL> <version>
<headers>
<entity-body>
POST请求,请求数据要求放在z中,并在请求头指明编码方式,一般常见的有四种编码方式
-
application/x-www-form-urlencoded,请求数据以表单方式提交,一般在请求头指定编码为 Content-Type: application/x-www-form-urlencoded;charset=utf-8, 请求数据在空格一行之后,以&拼接放在消息体中,例如:登录请求为post,参数为user/pwd
POST http://localhost:8080/login Content-Type: application/x-www-form-urlencoded;charset=utf-8 user=root&pwd=123
-
multipart/form-data,post请求提交表单文件常用的编码方式,一般在用于上传文件Content-Type指定的编码,例如:
POST http://www.example.com HTTP/1.1 Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryrGKCBY7qhFd3TrwA ------WebKitFormBoundaryrGKCBY7qhFd3TrwAContent-Disposition: form-data; name="text"
-
application/json,目前流行的restful接口风格,一般使用json进行前后端数据交互
例如:
post http//localhost:8080/login HTTP/1.1
Content-Type:application/json;charset=utf-8
{
user: "root",
pws: "123"
}
- text/xml,xml作为http远程调用规范,一帮用在远程后段调用时的编码
POST http://www.example.com HTTP/1.1
Content-Type: text/xml
<?xml version="1.0"?>
<methodCall>
<methodName>user.getUserName</methodName>
<params>
<param>
<value><i4>root</i4></value>
</param>
</params>
</methodCall>
```