使用 play-ws-standaloneplay-ws-standalone 版本 2.1.2
我正在使用 play 独立 ws 客户端在我的 Scala 项目中进行休息调用。在我遇到问题的代码库的特定部分中,我不导入核心播放框架 jar(我也不想,独立的 ws 客户端不应该需要它)。
我遇到的问题是发送带有多部分文件的发布请求。根据示例,我应该使用 play.api.mvc.MultipartFormData.FilePart[Source[ByteString, Any]],它位于核心 Play 框架 jar 中(与所有其他与 ws 客户端相关的类不同,可以在play-ws-standalone jar)。
DefaultBodyWritables 只提供了上传单个文件的 BodyWritable 实现:DefaultBodyWritables.writableOf_File,所以不符合我的目的。
我知道我可以为多部分/表单数据媒体类型实现自己的 BodyWritable,但不确定如何使其工作。Play 框架中的 MultiPartFormData 实现相当复杂。这方面的任何提示都会有所帮助。
TLDR;
FilePart 不能与 Play 框架解耦有什么原因吗?是否有任何解决方法可以让我免于在此模块中导入整个框架(我真的希望避免)以使用 play-ws-standalone 上传 multipart/form-data?