猿问

调用或执行 URL 时文件下载不开始

如果有人将此网址https://de.visiblealpha.com/links/80488d55-ae41-4def-9452-bae3ac2e2b06加载到浏览器中,则开始下载一个 excel 文件。所以当我通过HttpWebRequest调用相同的 url 时,excel 文件不会开始下载。我试过这个代码示例。


string address = "https://de.visiblealpha.com/links/80488d55-ae41-4def-9452-bae3ac2e2b06";

using (WebClient client = new WebClient())

{

    client.DownloadString(address);

}

我再次尝试了这个。


string url = "https://de.visiblealpha.com/links/80488d55-ae41-4def-9452-bae3ac2e2b06";

WebRequest request = HttpWebRequest.Create(url);

WebResponse response = request.GetResponse();

StreamReader reader = new StreamReader(response.GetResponseStream());

string responseText = reader.ReadToEnd();

但未能达到我的目标。代码成功执行,但没有开始下载我想要实现的 excel 文件。


当我尝试将此网址https://de.visiblealpha.com/links/80488d55-ae41-4def-9452-bae3ac2e2b06加载到 webbrowser 控件中时,也看到了同样的问题,没有 excel 文件开始下载。这是我尝试过的代码。


webBrowser1.Navigate("https://de.visiblealpha.com/links/80488d55-ae41-4def-9452-bae3ac2e2b06");

webBrowser1.ScriptErrorsSuppressed = true;

我只是不明白为什么调用或执行相同的 url 时没有下载 excel 文件。


所以请有人告诉我我需要做什么,结果当我执行 url excel 文件将开始在客户端 PC 中下载。


请分享一些工作代码示例。


海绵宝宝撒
浏览 144回答 1
1回答

慕侠2389804

DownloadString 将内容返回到内存中的变量中。文件不会保存在系统上。如果这是您想要的,那么您需要在代码中进行一些小改动:string address = "https://de.visiblealpha.com/links/80488d55-ae41-4def-9452-bae3ac2e2b06";using (WebClient client = new WebClient()){    string contents = client.DownloadString(address);}变量“contents”将包含您问题中 URL 的 html。如果你想要它作为一个文件,那么我需要使用 DownloadFile 方法。电子表格本身是一个不同的 URL。本文档末尾有一个示例。
随时随地看视频慕课网APP
我要回答