Gre*_*reg 5 c# file-upload http httpwebrequest
是否有一个流行的C#库用于工作HTTP?例如,简化使用httpwebrequest等的工作
例如,使用某些参数执行http文件上载需要许多行和Http协议内容格式等知识.WebClient本身不会这样做.
所以,新的,有一个知名的库,c#开发人员在这里使用?
谢谢
dtb*_*dtb 13
Web表单以两种格式之一提交:application/x-www-form-urlencoded和multipart/form-data.
WebClient提供了一种将任何类型的数据上传到网站的简单方便的方法.在application/x-www-form-urlencoded的情况下,你所要做的就是提供一个NameValueCollection.对于multipart/form-data,AFAIK,您必须自己创建请求数据(可能包括文件和名称值对).
应用程序/ x-WWW窗体-urlencoded
NameValueCollection formData = new NameValueCollection();
formData["q"] = "c# webclient post urlencoded";
formData["btnG"] = "Google Search";
formData["hl"] = "en";
WebClient myWebClient = new WebClient();
myWebClient.UploadValues(uriString, formData);
Run Code Online (Sandbox Code Playgroud)
WebClient.UploadValues将HTTP方法设置为"POST",将Content-Type设置为"application/x-www-form-urlencoded"URL编码formData并将其上载到指定的uriString.
多部分/格式数据
string formData = @"--AaB03x
Content-Disposition: form-data; name=""submit-name""
Larry
--AaB03x
Content-Disposition: form-data; name=""files""; filename=""file1.dat""
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
" + Convert.ToBase64String(
File.ReadAllBytes("file1.dat"), Base64FormattingOptions.InsertLineBreaks) + @"
--AaB03x--
";
WebClient myWebClient = new WebClient();
myWebClient.Encoding = Encoding.ASCII;
myWebClient.Headers.Add("Content-Type", "multipart/form-data; boundary=AaB03x");
myWebClient.UploadString(uriString, formData);
Run Code Online (Sandbox Code Playgroud)
这将设置内容类型到"multipart/form-data"与请求数据中使用的边界.
WebClient.UploadData将HTTP方法设置为"POST"并将字节数组上传到uriString.此示例中的请求数据包含一个文件file1.dat和一个submit-name设置为的表单参数Larry.RFC2388中描述了该格式.
| 归档时间: |
|
| 查看次数: |
7361 次 |
| 最近记录: |