post的数据在 request Payload 内, 因此,Request Headers 里面带有一个 boundary 属性,服务器收到 post 请求之后,通过 boundary 将参数从 Payload 中分离出来。
即
params = body.split(boundary)
唯一需要注意的是,CRLF(回车换行符)的使用。HTTP协议对CRLF的内容分割要求还是略严的。
Content-Type:multipart/form-data; boundary=----WebKitFormBoundarydKY7YrWhI3bdiNYz
--{boundary}
Content-Disposition: form-data; name="{name1}"
{value1}
--{boundary}
Content-Disposition: form-data; name="{name2}"
{value2}
--{boundary}
Content-Disposition: form-data; name="{file_name1}"; filename="xxx.png"
Content-Type: image/png
0x120x12...
--{boundary}--