Недавно я перенес свою серверную часть на .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 ... mpty-for-m