我正在尝试保存一个通过 multipart/mixed
HTTP 请求上传的二进制文件,该文件作为 到达我的控制器@RequestPart ByteArrayResource
,但是当我将字节数组保存到磁盘时FileOutputStream.write
,字节与原始文件中的字节不同。
由于ASCII字符对应的字节是相同的,不同的是具有更高值的字节,我认为这是字符编码的问题,但是设置
<property name="defaultEncoding" value="utf-8"/>
因为CommonsMultipartResolver
不能解决问题。
请求部分也有Content-Transfer-Encoding: binary
,但看起来 Commons 的多部分解析器仍在注入ByteArrayResource
与客户端发送的字节不完全相同的字节。
我错过了什么?