Я использую RestSharp для API в моем клиентском проекте.
Request.AddParameter(new Parameter("Topic", Topic, ParameterType.GetOrPost));
Request.AddParameter(new Parameter("Details", Details, ParameterType.GetOrPost));
Request.AddParameter(new Parameter($"UploadedDescription_0", "UploadDescriptions", ParameterType.GetOrPost));
Request.AddFile($"UploadedFile_0", File.ReadAllBytes(filePath), fileName, MimeTypesMap.GetMimeType(fileName));
Request.AlwaysMultipartFormData = true;
Как видно из приведенного выше кода, я добавил параметр файла вместе с дополнительными полями для API.
Проблема с использованием RestSharp
Когда я отправляю запрос без описания файла и параметра файла, API работает нормально. Но если я добавляю параметры файла, я получаю сообщение об ошибке, в котором говорится, что параметр файла (загруженный файл) не может быть проверен с данными запроса.
Я пробовал чистый пример кода HTTP для той же задачи. Один и тот же файл с одинаковыми параметрами работает без проблем. Вы можете сослаться на подобный код здесь
К вашему сведению, я не добавляю никаких собственных дополнительных заголовков. Существование файла проверяется для каждого файла перед вызовом.
Я использую последнюю версию RestSharp. Кто-нибудь может сказать мне, что я здесь не так делаю?