如何在rest wcf服务中上传pdf文件和其他字符串参数
Posted
技术标签:
【中文标题】如何在rest wcf服务中上传pdf文件和其他字符串参数【英文标题】:how to upload a pdf file and other string parameter in rest wcf service 【发布时间】:2015-07-27 07:11:15 【问题描述】:我已经创建了一个 rest wcf 服务,现在我想将 pdf 文件和其他一些字符串数据发布到它,那么正确的方法是什么
1) 将 pdf 转换为 base64 字符串,然后形成 xml 并将其发布到 REST Web 服务中,然后在 REST 服务中对其进行解码。
2) 使用以下代码直接上传
byte[] pdfFile = File.ReadAllBytes("pdf file path here");WebRequest request = WebRequest.Create("https://test.site.fr/Testfile");
request.Method = "POST";
request.ContentLength = pdfFile.Length;
request.ContentType = "application/pdf";
Stream stream = request.GetRequestStream();
stream.Write(pdfFile, 0, pdfFile.Length);
stream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
Console.WriteLine(reader.ReadToEnd());
reader.Close();
这对于大文件和需要任何其他压缩时更好
【问题讨论】:
【参考方案1】:最好的方法是使用 multipart/form-data。 C# 没有内置的 multipart/form-data 解析器,因此请使用由 C# 社区的一位开发人员编写的解析器。
HttP Multipart Data Parser
【讨论】:
以上是关于如何在rest wcf服务中上传pdf文件和其他字符串参数的主要内容,如果未能解决你的问题,请参考以下文章
wcf rest 服务用于安卓和ISO调用2-------文件上传