asp.net core多文件分塊同時(shí)上傳組件使用詳解
服務(wù)器端
引用 nuget 包:JMS.FileUploader.AspNetCore
然后啟用上傳組件:
app.UseAuthorization(); app.MapControllers(); //啟用上傳組件,并限制單個(gè)文件最大100M app.UseJmsFileUploader(1024*102400); app.Run();
在 Controller 里面,寫個(gè) Test 函數(shù),處理上傳的文件:
[ApiController] [Route("[controller]/[action]")] public class MainController : ControllerBase { [HttpPost] public string Test([FromBody] object body) { var customHeader = Request.Headers["Custom-Header"]; //臨時(shí)文件路徑 var filepaths = Request.Headers["FilePath"]; //文件名 var filenames = Request.Headers["Name"]; return filenames; } }
文件上傳完畢,保存在臨時(shí)文件中,Request.Headers["FilePath"] 可以讀取這些文件的路徑,如果確定要保留這些文件,用 File.Move 把它們移到你的目標(biāo)文件夾當(dāng)中;
Request.Headers["Name"] 則是讀取文件名。
前端
引入 jms-uploader 組件:
import JmsUploader from "jms-uploader"
html 元素:
<input id="file1" multiple type="file" /> <input id="file2" multiple type="file" /> <button onclick="upload()"> upload </button> <div id="info"></div>
javascript 腳本:
async function upload() { //自定義請(qǐng)求頭 var headers = function () { return { "Custom-Header": "test" }; }; //提交的body var dataBody = { name: "abc" }; var uploader = new JmsUploader("http://localhost:5200/main/test", [document.querySelector("#file1").files, document.querySelector("#file2").files], headers, dataBody); uploader.setPartSize(1024);//設(shè)置分塊大小,默認(rèn)是102400 uploader.onUploading = function (percent, uploadedSize, totalSize) { document.querySelector("#info").innerHTML = percent + "% " + uploadedSize + "," + totalSize; }; var ret = await uploader.upload(); //上傳完畢 alert(ret); }
組件源碼地址 https://github.com/simpleway2016/JMS.FileUploader
以上就是asp.net core多文件分塊同時(shí)上傳組件使用詳解的詳細(xì)內(nèi)容,更多關(guān)于asp.net core多文件分塊上傳的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Asp.net 頁(yè)面調(diào)用javascript變量的值
開發(fā)過(guò)程中碰到了這種情況,我想將javascript中定義的變量賦值給頁(yè)面中的TextBox控件.2009-12-12根據(jù)控件Id得到控件并對(duì)該控件進(jìn)行操作
在做動(dòng)態(tài)獲取控件時(shí),時(shí)常需要根據(jù)Id得到控件,并對(duì)該控件進(jìn)行操作,示例如下,大家可以參考下2014-06-06.NET使用?OpenTelemetry?Traces?追蹤應(yīng)用程序的方法
OpenTelemetry Traces是OpenTelemetry提供的一種遙測(cè)數(shù)據(jù)類型,用于記錄和描述在分布式系統(tǒng)中的單個(gè)操作或工作單元的生命周期,這篇文章主要介紹了.NET中使用OpenTelemetry Traces追蹤應(yīng)用程序,需要的朋友可以參考下2024-06-06Asp.net+jquery+.ashx文件實(shí)現(xiàn)分頁(yè)思路
分頁(yè)思路: .ashx程序中,編寫好取得不同頁(yè)碼的程序。在頁(yè)面布局好的前提下,留下數(shù)據(jù)區(qū)域 div。然后在頁(yè)面請(qǐng)求 .ashx程序生成下一頁(yè)的html代碼。覆蓋div.innerHTMl2013-03-03asp.net下GDI+的一些常用應(yīng)用(水印,文字,圓角處理)技巧
asp.net下GDI+的一些常用應(yīng)用(水印,文字,圓角處理)技巧...2007-03-03.NET使用原生方法實(shí)現(xiàn)文件壓縮和解壓的詳細(xì)過(guò)程
這篇文章主要介紹了.NET使用原生方法實(shí)現(xiàn)文件壓縮和解壓,本文我們主要講的是如何使用.NET原生方法System.IO.Compression命名空間中的類來(lái)對(duì)文件和文件夾進(jìn)行壓縮或解壓縮(壓縮格式.zip文件格式),需要的朋友可以參考下2024-06-06asp.net下結(jié)合HttpHandler實(shí)現(xiàn)圖片防盜鏈
asp.net防圖片盜鏈HttpHandler2010-07-07ASP.NET MVC使用EPPlus,導(dǎo)出數(shù)據(jù)到Excel中
這篇文章介紹的是怎樣導(dǎo)出數(shù)據(jù)到Excel文件中,大多數(shù)的后端程序都有報(bào)表功能:把顯示在Grid中的數(shù)據(jù)導(dǎo)出到Excel文件中,這篇文章中使用的是EPPlus組件。需要的朋友可以參考借鑒2016-12-12asp.net編程獲取項(xiàng)目根目錄實(shí)現(xiàn)方法集合
這篇文章主要介紹了asp.net編程獲取項(xiàng)目根目錄實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析總結(jié)了asp.net針對(duì)項(xiàng)目目錄的操作技巧與注意事項(xiàng),需要的朋友可以參考下2015-11-11