我正在寻找一种解决方案,将文件从客户端上传到通过Web服务连接的服务器。 客户端用c#编写,java用web服务编写。 文件可以相当大< 100MB。
您认为哪种方法最好?
答案 0 :(得分:2)
Base64对文件进行编码并将其作为附件发送。如果您需要确保附件的内容在途中不会更改,请使用MTOM。否则,请使用DIME。
答案 1 :(得分:1)
在客户端和服务器上同意编码,然后使用该编码对文件进行序列化,将其包装在CDATA
标记中,并将值分配给客户端上SOAP请求中的文本节点。
读取服务器上CDATA标签之间的数据,使用约定的编码对其进行反序列化,然后根据需要使用字节流。
如果文件很大,编码可能会涉及某种压缩,但如果客户端是.NET和服务器Java,则要小心互操作问题。
答案 2 :(得分:1)
对于服务器端,您应该查看Commons File Upload