2017-10-21 197 views
0

当想要发送它们或通过HTTP上传它们时,不要像图像或PDF文件那样的MIME类型需要base64或其他编码 ,因为它们可能潜在地包含控制字符?不要像图片或PDF文件那样的MIME类型需要base64或其他编码?

二进制数据不需要从文本文件中分离出来,或者我甚至可以将文本文件转换为二进制数据(应用程序/八位字节流)并让接收应用程序决定如何处理它?

回答

1

HTTP请求不需要任何传输编码。正确构建HTTP POST请求multipart/form-data将包括Content-Type通过每个边界的每个部分。不需要将其视为MIME消息。服务器/应用程序,这个HTTP请求所针对的将根据内容头部,特别是Content-Type处理每个边界内容。 HTTP POST有效载荷的小示例可能看起来像...

POST /my_page HTTP/1.1 
Content-Type: multipart/form-data; boundary=MNZ2WM28FYlZX3miY-6E9iytpT0UfW-uzlOvF 

--MNZ2WM28FYlZX3miY-6E9iytpT0UfW-uzlOvF 
Content-Disposition: form-data; name="field1" 

content of this input field 
--MNZ2WM28FYlZX3miY-6E9iytpT0UfW-uzlOvF 
Content-Disposition: form-data; name="html_content" 

<p><em>Dear customer</em>,</p> 
<p>Please review the attached.</p> 
--MNZ2WM28FYlZX3miY-6E9iytpT0UfW-uzlOvF 
Content-Disposition: form-data; name="file0"; filename="sample.txt" 
Content-Type: text/plain 

Plain text file content. 
--MNZ2WM28FYlZX3miY-6E9iytpT0UfW-uzlOvF 
Content-Disposition: form-data; name="file1"; filename="sample.docx" 
Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document 

PK  ! ߤÒlZ  [Content_Types].xml ¢(  
l"%3÷Þ3VƃÑÚšl µw%ë=–“^i7+Ù×ä-d&á”0ÞAÉ6€l4¼½L60#µÃ’ÍS 
Oœ£œƒXø Ž*•V$z3„ü3à÷½Þ—Þ%p)Oµ^ “²×5}nH"dÙsÓXg•L„ 
    Á 8  
--MNZ2WM28FYlZX3miY-6E9iytpT0UfW-uzlOvF-- 
相关问题