C # WebClient исключение для определенного сервера - PullRequest
0 голосов
/ 17 ноября 2018

Мой полный код:

using System;
using System.IO;
using System.Net;
namespace Hello
{
    public class Program
    {
        public static void Main()
        {
            WebClient web = new WebClient();
            web.DownloadFile("https://images.wallpaperscraft.com/image/fractal_spiral_digital_art_130384_1280x720.jpg", "1.jpg");
            web.DownloadFile("https://b8.eu.icdn.ru/a/a_l_e_x/5/61846275zQa.jpg", "2.jpg");
        }
    }
}

Образ "1.jpg" скачивается нормально. Но следующая ссылка вызывает это исключение:

Необработанное исключение: System.Net.WebException: основное соединение было закрыто: при отправке произошла непредвиденная ошибка. ---> System.IO.IOException: невозможно прочитать данные из транспортного соединения: существующее соединение было принудительно закрыто удаленным хостом. ---> System.Net.Sockets.SocketException: ** Существующее соединение было принудительно закрыто удаленным хостом ** в System.Net.Sockets.Socket.Receive (буфер Byte [], смещение Int32, размер Int32, SocketFlags socketFlags) ) в System.Net.Sockets.NetworkStream.Read (буфер Byte [], смещение Int32, размер Int32) --- конец трассировки стека внутренних исключений --- в System.Net.Sockets.NetworkStream.Read (буфер Byte [] , Смещение Int32, размер Int32) в System.Net.FixedSizeReader.ReadPacket (буфер Byte [], смещение Int32, число Int32) в System.Net.Security.SslState.StartReceiveBlob (буфер Byte [], AsyncProtocolRequest asyncRequest) в System.Net .Security. [] буфер, AsyncProtocolRequest asyncRequest) в System.Net.Security.SslState.ProcessAut проверка подлинности (LazyAsyncResult lazyResult) в System.Net.TlsStream.CallProcessAuthentication (состояние объекта) в System.Threading.ExecutionContext.RunInternal (ExecutionContext executeContext, обратный вызов contextCallback, состояние объекта, логический preserveSyncCreadtxt.ExextContext.ExtectionContext.ExtectionContext.ExtectionContext.ExtectionText.Contection.ExtectionText.Contection.TextEnttionText.TextEnttionTextEnttionTextEnttion) .ThisText.Text.Text.Text.Text.TextEntT. Обратный вызов ContextCallback, состояние объекта, логическое preserveSyncCtx) в System.Threading.ExecutionContext.Run (обратный вызов ExecutionContext executeContext, обратный вызов ContextCallback, состояние объекта) в System.Net.TlsStream.ProcessAuthentication (результат LazyAsyncResult) в System.Net.TlsStream [ ] буфер, смещение Int32, размер Int32) в System.Net.PooledStream.Write (буфер Byte [], смещение Int32, размер Int32) в System.Net.ConnectStream.WriteHeaders (Boolean async) --- Конец трассировки стека внутренних исключений --->


Обратите внимание, что я могу просматривать второе изображение в любом веб-браузере без ошибок; и я могу скачать его, используя любой менеджер загрузок.

...