Устройство не настроено при загрузке удаленного PDF в ASP.NET Core - PullRequest
0 голосов
/ 08 февраля 2019

Я пытаюсь загрузить PDF-файл с удаленного URL-адреса, чтобы добавить его в почтовое вложение.

Мое приложение - это .NET Core 2.1 API.URL-адрес представляет собой одностраничный PDF-файл в облачном фронте AWS.

    try
    {
        using (var httpClient = new HttpClient())
        {
            string url = AttachmentPath + "/" + AttachmentFilename;
            byte[] bytes = await httpClient.GetByteArrayAsync(url);
            string fileContentsAsBase64 = Convert.ToBase64String(bytes);

            msg.AddAttachment(AttachmentFilename, fileContentsAsBase64, "application/pdf");
        }
    }
    catch (Exception ex)
    {

    }

Я получаю следующую ошибку:

{System.Net.Sockets.SocketException (6): устройствоне настроен в System.Net.Http.ConnectHelper.ConnectAsync (строковый хост, порт Int32, CancellationToken cancellationToken)}

Что я делаю не так?

Обновление

Благодаря ссылке ниже, я изменил код следующим образом:

private static HttpClient httpClient = new HttpClient();

    try
    {
        string url = AttachmentPath + "/" + AttachmentFilename;
        // The following line causes the exception
        byte[] bytes = await httpClient.GetByteArrayAsync(url);
        string fileContentsAsBase64 = Convert.ToBase64String(bytes);

    }
    catch (Exception ex)
    {

    }

Исключение происходит при ожидании httpClient.GetByteArrayAsync.

1 Ответ

0 голосов
/ 08 февраля 2019

Кажется, что ваш S3 Config отсутствует.Вам необходимо включить конфигурацию S3 в HttpClient, возможно, сопоставленный с заголовком.

есть похожая проблема на GitHub # 1014 , тогда как для этого используется AmazonS3Client.

...