使用WebClient POST查询并下载文件

哈尔古什

我可以在单个WebClient请求中将数据发布到URI并下载文件吗?

TL;DR

我正在使用扩展类WebClient来联系我们的PHP API并下载文件。该类在中添加CookieContainerWebClient以启用PHP会话。

  1. WebClient.UploadValues()NameValueCollection向服务器发布查询以认证以下请求。
  2. WebClient.DownloadFile() 下载文件。

这是API唯一不是非常RESTful的部分,我希望将其移至单个无状态查询中。

我可以在调用之前WebClient.QueryString手动设置NameValueCollection查询字符串,DownloadFile()但是该方法使用GET方法,并且API需要POST数据。

可以在调用之前将方法设置为POSTDownloadFile()吗?还有另一种方法吗?

哈尔古什

答案比我意识到的要简单(doh)。

using (WebClient client = new WebClient())
{
    byte[] result = client.UploadValues(url, data);
    File.WriteAllBytes(path, result);
}

UploadValues()发送POST数据。返回的byte []数组将是文件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用WebClient POST查询并下载文件

来自分类Dev

使用c#WebClient下载文件

来自分类Dev

Vertx WebClient 下载文件

来自分类Dev

使用WebClient从https下载文件时出错

来自分类Dev

使用Jquery Post使用Web API下载文件

来自分类Dev

使用Jquery Post使用Web API下载文件

来自分类Dev

Express js:如何使用POST请求下载文件

来自分类Dev

使用node.js从POST请求下载文件

来自分类Dev

如何使用http post Node.js下载文件

来自分类Dev

webclient下载文件但未执行完毕

来自分类Dev

c#尝试使用WebClient下载文件名中包含特殊字符的文件

来自分类Dev

如何使用WebClient登录“ Flash网站”并使用c#下载文件?

来自分类Dev

尝试使用WebClient.DownloadFile()或WebRequest下载文件时无法实现超时

来自分类Dev

尝试使用WebClient.DownloadFile()或WebRequest下载文件时无法实现超时

来自分类Dev

尝试使用WebClient下载文件时遇到重定向重定向的问题

来自分类Dev

使用cherrypy下载文件

来自分类Dev

使用AsyncTask下载文件

来自分类Dev

使用Django下载文件

来自分类Dev

使用webapi下载文件

来自分类Dev

使用ClosedXML下载文件

来自分类Dev

使用卷曲下载文件

来自分类Dev

使用AngularJS下载文件

来自分类Dev

使用FileSaver下载文件

来自分类Dev

使用fastapi下载文件

来自分类Dev

使用Micronaut下载文件

来自分类Dev

使用卷曲下载文件

来自分类Dev

使用ftp下载文件

来自分类Dev

使用JSF下载文件

来自分类Dev

使用脚本下载文件