httpclient下载文件
上代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
private async Task<string> DownLoadFileAsync(string url)
{
var handler = new HttpClientHandler() { UseCookies = true };
var client = HttpClientFactory.Create(handler);
client.DefaultRequestHeaders.Add("User-Agent", @"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0");//添加自主驱动 很重要,没细研究,确实添加上就能下载文件
client.DefaultRequestHeaders.Add("Accept", @"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");//添加数据格式
byte[] bytes = null;
bytes = await client.GetByteArrayAsync(url);
var tplfile = $"c:/{Guid.NewGuid()}{Path.GetExtension(url)}";
using (var fs = new System.IO.FileStream(tplfile, FileMode.CreateNew))
{
fs.Write(bytes, 0, bytes.Length);
fs.Close();
}
return tplfile;
}
本文会经常更新,请阅读原文: https://dashenxian.github.io/post/httpclient%E4%B8%8B%E8%BD%BD%E6%96%87%E4%BB%B6 ,以避免陈旧错误知识的误导,同时有更好的阅读体验。
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名 小神仙 (包含链接: https://dashenxian.github.io ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系 (125880321@qq.com) 。