20

我已经构建了一个 WCF 服务来接受文件并将其写入磁盘。前端包含一个带有 SWFUpload 的页面,该页面在客户端处理上传。显然,SWFUpload 使用以下内容类型发布数据:multipart/form-data。

我认为这没问题,但在服务方面我得到了一个错误。错误是“ProtocolException”,需要文本/xml。我在绑定中尝试了不同的消息编码,但似乎没有任何效果。

如何使用 multipart/form-data 上传此文件?

4

4 回答 4

9

@jdiaz,

@JasonS 是对的,要上传文件,您需要将其作为字节流传输。您需要使用WCF 流。例如关于如何通过 WCF 上传文件,请参阅http://kjellsj.blogspot.com文章

于 2008-09-09T05:40:05.457 回答
2

如果您希望它是标准的,您想要使用的可能是MTOM 。使用它,您可以拥有 MIME 多部分消息。

然后,您必须将文件作为流读取并将其填充到请求的参数之一中。

于 2008-09-09T05:59:22.853 回答
1

可能是您的 WCF 服务以 .NET Framework 3.5 为目标,而您的 IIS 在 .NET Framework 4.0 上运行。在这种情况下(框架不匹配),您需要修改您的服务。

于 2011-04-27T05:04:58.233 回答
0

我相信您将不得不将文件作为字节数组传输到 WCF。在发送到您的服务之前,您需要处理来自 SWFUpload 的帖子并转换为字节数组。

于 2008-09-09T05:36:34.280 回答