我可以直接通过 HTTP 发送二进制数据吗?

h22*_*h22 7 http

我的意思是,我可以期待工作吗

POST / HTTP/1.1
Content-Type: application/octet-stream
Content-Length: 27

[27 bytes of binary data]
Run Code Online (Sandbox Code Playgroud)

并且二进制数据是任意二进制数据,不是使用所有8 位进行Base64 编码,而不是 7 位。接收应用程序是自定义应用程序,它知道如何处理数据。

当然,我可以测试,但我需要知道这是否可能适用于真实服务器和网络,而不仅仅是在本地主机上运行的客户端和服务器之间。

Jul*_*hke 9

是的。HTTP/1.1 消息头块是文本,但消息的有效负载可以是任意的二进制数据。


Gum*_*mbo 6

RFC 2046 定义八位字节流子类型如下:

4.5.1. 八位字节流子类型

“八位字节流”子类型用于指示主体包含任意二进制数据。

并且RFC 2045在 MIME 消息的上下文中定义二进制数据如下:

2.9. 二进制数据

“二进制数据”是指允许任何八位字节序列的数据。