首页 > 解决方案 > 使用 Blazor c# 分段上传大文件

问题描述

有没有人有在 Blazor 中上传非常大的文件(3-5Gb)的经验并知道它是否运行良好,例如使用 c#、JavaScript 手动缩小文件或 HTML5 文件 API 分段上传?最好没有第三方库。

如果没有为允许上传的文件类型设置特殊限制,我还有一个关于登录用户场景的一般性问题,对于例如 OWASP,使用 c#、JavaScript 客户端、服务器端仍然可以处理哪些安全问题?

标签: c#asp.net-web-apiblazor-server-sideowaspblazor-webassembly

解决方案


我让它正常工作的唯一方法是对在同一台服务器上运行的 API 进行本机调用。

您可以使用 fetch 或 ajax 来执行此操作。有关如何使用 fetch 的示例:https ://flaviocopes.com/how-to-upload-files-fetch

上传后,您可以使用 dotnets 文件系统检查文件位置。

您可以随时检查文件扩展名,但我不建议只允许任何人将文件上传到您的网站。

有一个病毒总数的API,我没用过,你自己看看吧! https://github.com/Genbox/VirusTotalNet

您必须使用纯 javascript 或 jquery 来执行此操作,任何使用 c# 执行此操作的尝试都将使用 signalR,并且上传速度非常慢。


推荐阅读