欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

.Net Core創(chuàng)建Api進(jìn)行文件上傳功能

 更新時(shí)間:2022年03月09日 14:12:31   作者:冬天不懂夏的熱  
這篇文章主要介紹了.Net Core創(chuàng)建Api進(jìn)行文件上傳,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

1、Net Core創(chuàng)建api接口,用于接收外部請(qǐng)求,進(jìn)行文件的上傳

2、添加控制器類,添加如下代碼:

[HttpPost]
        [Route("PostFile")]
        public String PostFile([FromForm] IFormCollection formCollection)
        {
            String result = "Fail";
            if (formCollection.ContainsKey("user"))
            {
                var user = formCollection["user"];
            }
            FormFileCollection fileCollection = (FormFileCollection)formCollection.Files;
            foreach (IFormFile file in fileCollection)
            {
                StreamReader reader = new StreamReader(file.OpenReadStream());
                String content = reader.ReadToEnd();
                String name = file.FileName;
                String filename = @"D:/Test/" + name;
                if (System.IO.File.Exists(filename))
                {
                    System.IO.File.Delete(filename);
                }
                using (FileStream fs = System.IO.File.Create(filename))
                {
                    // 復(fù)制文件
                    file.CopyTo(fs);
                    // 清空緩沖區(qū)數(shù)據(jù)
                    fs.Flush();
                }
                result = "Success";
            }
            return result;
        }

3、修改其中需要注意的點(diǎn),如文件夾是否存在未做判斷,需要提前創(chuàng)建文件夾或添加文件夾判斷

4、通過(guò)postman進(jìn)行接口測(cè)試,form-data數(shù)據(jù)請(qǐng)求方式,key選擇File,value選擇文件,進(jìn)行提交(如圖)。

5、注意問(wèn)題:提交請(qǐng)求之后,如遇到報(bào)錯(cuò)返回代碼413,通常是文件請(qǐng)求大小被限制。目前可提供以下幾種解決方案,但在不同條件下生效的方式不一樣,需要一一測(cè)試

方法一:在接口方法上添加特性[DisableRequestSizeLimit]

同時(shí)在startup.cs中的添加

 services.Configure<FormOptions>(x =>
            {
             x.MultipartBodyLengthLimit = 209_715_200;//最大200M
            });

方法二:在startup.cs中的添加

ervices.Configure<FormOptions>(x =>
      {
          x.ValueLengthLimit = int.MaxValue;
          x.MultipartBodyLengthLimit = int.MaxValue;
          x.MemoryBufferThreshold = int.MaxValue;
      });

如果后續(xù)有其它問(wèn)題或解決方案,將在評(píng)論區(qū)進(jìn)行補(bǔ)充。

到此這篇關(guān)于.Net Core創(chuàng)建Api進(jìn)行文件上傳的文章就介紹到這了,更多相關(guān).Net Core文件上傳內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論