Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 错误:";请求被中止:连接意外关闭;使用WebClient.DownloadFIleAsync时_C#_Github_Webclient - Fatal编程技术网

C# 错误:";请求被中止:连接意外关闭;使用WebClient.DownloadFIleAsync时

C# 错误:";请求被中止:连接意外关闭;使用WebClient.DownloadFIleAsync时,c#,github,webclient,C#,Github,Webclient,我在代码Visual Studio 2015社区版中使用C# 我想从私有Github存储库异步下载发布文件,并且已经具有下载Uri: //发布/下载/1.0.7.4/ 如果我使用上面的Uri,总是会出现此错误: 请求被中止:连接意外关闭 奇怪的是,如果我从我的repo尝试另一个Uri,它会成功下载。 这是我的另一个主人/ 这是我的密码 // Set up WebClient to download file webClient = new WebClient();

我在代码Visual Studio 2015社区版中使用C#

我想从私有Github存储库异步下载发布文件,并且已经具有下载Uri:

//发布/下载/1.0.7.4/

如果我使用上面的Uri,总是会出现此错误:

请求被中止:连接意外关闭

奇怪的是,如果我从我的repo尝试另一个Uri,它会成功下载。

这是我的另一个主人/

这是我的密码

// Set up WebClient to download file
        webClient = new WebClient();
        webClient.Proxy = WebRequest.DefaultWebProxy;
        webClient.Proxy.Credentials = CredentialCache.DefaultCredentials;
        //webClient.UseDefaultCredentials = true;
        //webClient.Headers.Add(HttpRequestHeader.Authorization, string.Format("token {0}", applicationInfo.TokenAuthorization));
        webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(webClient_DownloadProgressChanged);
        webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(webClient_DownloadFileCompleted);

        // Download file
        try
        { webClient.DownloadFileAsync(updateInfo.Uri, this.temp7zFile); }
        catch { this.DialogResult = DialogResult.No; this.Close(); }
我试图补充(现在它评论道)

webClient.UseDefaultCredentials=true

webClient.Headers.Add(HttpRequestHeader.Authorization, Format(“token{0}”,applicationInfo.TokenAuthorization))

结果始终相同=请求被中止:连接意外关闭

我真的不知道怎么了,我已经挣扎了3天了

注意:

-这两个Uri都是正确的,如果我在firefox浏览器中运行它,它会自动下载

-applicationInfo.TokenAuthorization:是Github授权的令牌

-Uri:是Uri地址


-this.temp7zFile:is destination download file

我终于找到了缺口。错误的Url,必须处理重定向

基于,要从私有回购中下载二进制文件或发布文件,请使用资产的Url

Github将从发送重定向下载Url,其中包含一些参数

您只需在WebClient.DownloadFileAsync中使用该Url,而无需标头或授权等,该文件将从此幸福地到达您的本地驱动器

这都是因为私人回购

希望这对你们大家都有用