Загруженный файл не имеет содержимого при загрузке с удаленного сервера IIS - PullRequest
0 голосов
/ 05 августа 2020

Я пытаюсь загрузить файлы на Google Диск, используя ASP. NET Core 3.0, вот мой код для загрузки файла.

GData.File fileMetadata = new GData.File()
{
    Id = null,
    Name = Path.GetFileName(path),
    MimeType = contentType
};

using (Stream stream = new FileStream(path, FileMode.Open, FileAccess.ReadWrite))
{
    FilesResource.CreateMediaUpload request = service.Files.Create(fileMetadata, stream, contentType);
    request.Fields = "id";
    request.Body = fileMetadata;

    request.ProgressChanged += (uploadProgress) =>
    {
        Debug.WriteLine($"{uploadProgress.Status} {uploadProgress.BytesSent}");
    };

    request.ResponseReceived += (obj) =>
    {
        Debug.WriteLine($"File uploaded successfully  {obj.Id}");
    };

    request.Upload();
}

Проблема, с которой я столкнулся, - этот метод работает нормально, когда я запускаю его на локальном сервере IIS . На удаленном сервере IIS этот метод работает успешно, но в загруженном файле нет содержимого и отображается 0 размер

, перейдите по этой ссылке, чтобы проверить: https://oauthdemo.coredata.ca/

Ответы [ 2 ]

0 голосов
/ 06 августа 2020

После целого дня борьбы, наконец, я решил эту проблему. Это было из-за временной папки. Я использовал FileStream для создания нового файла в папке temp. Это был вызов A-Syn c, из-за которого FileStream не удалось создать этот файл.

0 голосов
/ 06 августа 2020

Я проверил предоставленную вами ссылку, но результаты теста показывают, что Content-Length имеет размер. enter image description here введите описание изображения здесь

...