丢失会话,无法访问下载数据

时间:2013-06-05 16:14:46

标签: c# asp.net-mvc webclient webclient-download

public static byte[] BBStorageGetFile(string filePath, int projectId) 
{
    var queryString = QueryStringEncoder.bbs_encode("a=g&p=" + filePath + "&s=" + projectId);
    var url = "http://www.buildbinder.com/base/storageFile.aspx?" + queryString;

    string urlB = HttpContext.Current.Request.Url.ToString();
    if (urlB.Contains("intranet.buildbinder.com"))
    {
        url = "http://intranet.buildbinder.com:8000/base/storageFile.aspx?" + queryString; 
    }

    Uri uri = new Uri(url);

    WebClient webClient = new WebClient();
    webClient.Credentials = CredentialCache.DefaultCredentials;
    webClient.UseDefaultCredentials = true;

    webClient.Headers.Add(HttpRequestHeader.Cookie, "culture");
    webClient.Headers.Add(HttpRequestHeader.Cookie, "mySession");
    webClient.Headers.Add(HttpRequestHeader.ContentType, "application/x-www-form-urlencoded");
    webClient.Headers.Add(HttpRequestHeader.UserAgent, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");

    byte[] file = webClient.DownloadData(uri);

    return file;
}

1 个答案:

答案 0 :(得分:1)

问题解决了。有人改变了获取存储文件所需的一些参数,这个人没有与开发团队共享信息。 :(