在单个HTTPWebRequest中上传多个文件我创建了一个接受两件事的服务:1)一个名为“type”的正文参数。2)要上传的csv文件。我在服务器端这样读这两件事://Readbodyparamsstringtype=HttpContext.Current.Request.Form["type"];//读取上传的csv文件StreamcsvStream=HttpContext.Current.Request.Files[0].InputStream;我如何测试这个,我使用Fiddler来测试这个,但我一次只能发送一个东西(类型或文件),因为两者是不同的内容类型,我如何使用内容类型multipart/form-data和application/x-www-form-urlencoded同时。即使我使用这段代码publicstaticvoidPostDataCSV(){//打开样本csv文件stringurl="http://localhost/upload.xml";HttpWebRequest请求=(HttpWebRequest)WebRequest.Create(url);request.Method="POST";request.ContentType="multipart/form-data";request.ContentLength=fileToSend.Length;using(StreamrequestStream=request.GetRequestStream()){//将文件作为正文请求发送。requestStream.Write(fileToSend,0,fileToSend.Length);requestStream.Close();}HttpWebResponse响应=(HttpWebResponse)request.GetResponse();//读取响应字符串结果;使用(StreamReaderreader=newStreamReader(response.GetResponseStream())){result=reader.ReadToEnd();}控制台.WriteLine(结果);这也不会向服务器发送任何文件。您上面的代码不会创建正确的多部分文字。您不能简单地将文件写入流,每个部分都需要一个前导边界标记和每个部分标题等。有关您的多个内容类型问题的一些信息,请参阅使用HTTPWebrequest(multipart/form-data)上传文件:http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.7.2multipart/form-datais通过http协议发送多种数据类型的唯一方法。以上就是C#学习教程:在一个HTTPWebRequest中上传多个文件共享。如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。涉及侵权,请点击维权联系管理员删除。如需转载请注明出处:
