我想自動從客戶端鏈接提示的exe文件的下載。我可以從http://go.microsoft.com/fwlink/?LinkID=149156到http://www.microsoft.com/getsilverlight/handlers/getsilverlight.ashx獲得第一個重定向鏈接。請點擊並檢查它是如何工作的。 fwlink - > .ashx - > .exe ...我想直接鏈接到.exe。 但是,當通過代碼請求Web處理程序時,響應返回404,但如果嘗試使用瀏覽器,則實際下載。 任何人都可以建議如何自動化上述鏈接的下載表單嗎?我用來獲取鏈接重定向的代碼是這一個。在網絡瀏覽器中禁用保存/對話框並自動下載
public static string GetLink(string url)
{
HttpWebRequest httpWebRequest = WebRequest.Create(url) as HttpWebRequest;
httpWebRequest.Method = "HEAD";
httpWebRequest.AllowAutoRedirect = false;
// httpWebRequest.ContentType = "application/octet-stream";
//httpWebRequest.Headers.Add("content-disposition", "attachment; filename=Silverlight.exe");
HttpWebResponse httpWebResponse = httpWebRequest.GetResponse() as HttpWebResponse;
if (httpWebResponse.StatusCode == HttpStatusCode.Redirect)
{
return httpWebResponse.GetResponseHeader("Location");
}
else
{
return null;
}
}
@DavidStratton:他在客戶端上運行C#代碼(我假設);沒有安全問題。 – SLaks 2011-12-21 22:49:20
嘗試添加Cookie,或者使用GET而不是HEAD。 – SLaks 2011-12-21 22:49:57
謝謝SLaks.I嘗試GET。它沒有工作,但對於cookie ...我試圖將它添加到響應,如果這是你的意思? – Deku 2011-12-21 23:07:27