Я попытался использовать это, но поле URL на стороне сервера получено пустым. Я думаю, что его нельзя отправить через URL вызова API из-за '/' в URL-адресе изображения. Пожалуйста, исправьте меня, если я неправильно.
Мой angular код для создания данных формы.
postVoucherBanner(mediaUrl: string) {
const formdata: FormData = new FormData();
formdata.append('url', mediaUrl);
this.retailerService.addVoucherBanner(JSON.stringify(formdata)).subscribe((res) => {
this.updatedRetailer = res;
},
err => {
alert(err);
});
}
выполнение вызова в службу
addVoucherBanner(formdata: FormData) {
console.log(formdata);
return this._http.put(this.BaseURI + '/retailers/VoucherBanner', formdata,, {
headers: new HttpHeaders()
.set('Content-Type', 'application/json')
});
}
код моего сервера
[HttpPut]
[Route("[action]")]
[ServiceFilter(typeof(AuthRetailerApiFilterAttribute))]
public async Task<ActionResult<Retailer>> VoucherBanner([FromForm]string url, string RetailerId = null)
{
var retailer = await _context.Retailers.FindAsync(RetailerId);
if (retailer == null)
{
return NotFound();
}