第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

將圖像從 Angular 8 上傳到 ASP.Netcore Web API 時(shí)遇到問題

將圖像從 Angular 8 上傳到 ASP.Netcore Web API 時(shí)遇到問題

C#
繁星淼淼 2023-09-24 10:25:40
我花了一整天的時(shí)間試圖讓它發(fā)揮作用,我查看了以下內(nèi)容:https://www.talkingdotnet.com/upload-file-angular-5-asp-net-core-2-1-web-api/https://code-maze.com/upload-files-dot-net-core-angular/還有很多我數(shù)不過來的。我想要的只是發(fā)送一份表格和一張圖像。得到的錯(cuò)誤是:缺少內(nèi)容類型邊界內(nèi)容類型不正確函數(shù)求值需要所有線程運(yùn)行有角的register(user: UserViewModel, logo: File) {    // We use formData because we can't send file as an object    const formData = new FormData();    formData.append("user", JSON.stringify(user));    formData.append("logo", logo);    console.log(formData);    return this.http.post<UserRegisterViewModel>(`${UserAPI.API_User}/${"register"}`, formData).pipe(map(user => {      return user;    }));  }我的 C# 代碼看起來像這樣[HttpPost, DisableRequestSizeLimit]        [AllowAnonymous]        [Route("register")]        //[Consumes("application/json", "multipart/form-data")]        public async Task<IActionResult> RegisterAsync()        {            IFormFile logo = null;            try            {                // Get the logo                logo = Request.Form.Files[0];                // Get the user json string                var userJson = Request.Form["user"];
查看完整描述

2 回答

?
HUWWW

TA貢獻(xiàn)1874條經(jīng)驗(yàn) 獲得超12個(gè)贊

如果您想從 獲取文件Request.Form。您可以按照以下代碼示例操作:


客戶端 :


const formData = new FormData();

formData.append('file', fileToUpload, fileToUpload.name);


this.http.post('https://localhost:5001/api/upload', formData, {reportProgress: true, observe: 'events'})

.subscribe(event => {

    if (event.type === HttpEventType.UploadProgress)

    this.progress = Math.round(100 * event.loaded / event.total);

    else if (event.type === HttpEventType.Response) {

    this.message = 'Upload success.';

    this.onUploadFinished.emit(event.body);

    }

});

服務(wù)器端 :


[HttpPost, DisableRequestSizeLimit]

public IActionResult Upload()

{

    try

    {

        var file = Request.Form.Files[0];

        var folderName = Path.Combine("StaticFiles", "Images");

        var pathToSave = Path.Combine(Directory.GetCurrentDirectory(), folderName);


       .....

    }

    catch (Exception ex)

    {

       ....

    }

}

或者您可以使用 FromForm 獲取文件:


客戶端 :


let fileToUpload = <File>files[0];

const formData = new FormData();

formData.append('file', fileToUpload, fileToUpload.name);


this.http.post('YourURL', formData, {headers: {

  'Accept': 'application/json',     

  'Content-Disposition' : 'multipart/form-data'

},reportProgress: true, observe: 'events'})

  .subscribe(event => {

    ....

  });

那么服務(wù)器端將是:


[HttpPost, DisableRequestSizeLimit]

public IActionResult Upload([FromForm(Name = "file")] IFormFile file)

{



}


查看完整回答
反對(duì) 回復(fù) 2023-09-24
?
守候你守候我

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超10個(gè)贊

這解決了它,我有一個(gè)斷點(diǎn)

logo?=?Request.Form.Files[0];

由于某種原因,VS2017 和 2019 中存在一個(gè)錯(cuò)誤。

查看完整回答
反對(duì) 回復(fù) 2023-09-24
  • 2 回答
  • 0 關(guān)注
  • 159 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)