C# 从需要登录的URL下载文件

C# 从需要登录的URL下载文件,c#,C#,我正在尝试从Etsy下载一个.csv文件,但我不确定为什么仅仅写一个文件不起作用 StreamReader reader = new StreamReader(WebRequest.Create("https://www.etsy.com/se-en/your/orders/sold.csv?csv-type=transaction-level&month=&year=2016").GetResponse().GetResponseStream()); string line;

我正在尝试从Etsy下载一个.csv文件,但我不确定为什么仅仅写一个文件不起作用

StreamReader reader = new StreamReader(WebRequest.Create("https://www.etsy.com/se-en/your/orders/sold.csv?csv-type=transaction-level&month=&year=2016").GetResponse().GetResponseStream());
string line;
while ((line = reader.ReadLine()) != null)
{
Console.WriteLine(line);
}
或者只是

StreamReader reader = new StreamReader(WebRequest.Create("https://www.etsy.com/se-en/your/orders/sold.csv").GetResponse().GetResponseStream());
string line;
while ((line = reader.ReadLine()) != null)
{
Console.WriteLine(line);
}
我也试过使用

using (var client = new WebClient())
{
client.Credentials = new NetworkCredential("login", "password");
client.DownloadFile("https://www.etsy.com/se-en/your/orders/sold.csv", @"c:\sold.csv");
}

但它一直在给我http。你得到的HTML是什么?正如所建议的,可能存在基于cookie或令牌的身份验证。在这种情况下,您必须发出两个请求,一个在authURL上获得适当的cookie或令牌,另一个在下载url上使用提到的cookie或令牌。您应该在Chrome中手动尝试此过程并进行调试,并记录所需的实际请求和响应。

此链接是否将您重定向到下载链接?@MichalHainc您能看到吗?我以前从未使用过Cookie,但在chrome上调试后,我终于找到了我需要做的事情,所以谢谢你们。