Недавно я перенес свою серверную часть на .NET 8 и столкнулся с проблемой с API загрузки, который раньше работал идеально. Вот настройка:
У меня в контроллере есть метод API, который принимает файл и дополнительную строку данных:
Фронтенд (Angular):
Task Upload(IFormFile file, string additionalData){
}
const formData = new FormData();
formData.append('file', this.selectedFile, this.selectedFile.name);
formData.append('additionalData', JSON.stringify(param));
upload(data: FormData): Observable {
return this.http.post(this.apiUrl, data, { observe: 'response' });
}
После перехода на .NET 8 параметр extraData в API отображается как пустая строка. Я подтвердил, что FormData содержит как файл, так и строку JSON для дополнительных данных при отправке запроса.
Нужно ли что-то настроить в .NET 8, чтобы гарантировать, что параметр extraData имеет значение правильно получил? Будем очень признательны за любые указания о том, почему это может происходить и как это решить!
Заранее благодарим за любую помощь!
public IActionResult UploadImage(FileInputModel inputdata)
{
return Ok();
}
public class FileInputModel
{
public IFormFile File { get; set; }
public string Param { get; set; }
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... ng-in-empt