1

我在我的 ASP.NET MVC Web 应用程序中使用Uppy.io作为客户端 tus.io 实现。

并且tusdotnet v2.0.0作为 ASP.NET Core Web API 中的服务器端。

它一直运行良好,但我们如何将文件上传限制为仅对经过身份验证的用户?

这是我的 Razor 页面的代码片段:

var uppy = new Uppy.Core({ debug: true, autoProceed: false });


var uppy = new Uppy.Core(
    {
        debug: true
        , autoProceed: false
        , allowMultipleUploads: true
        , restrictions: {
            maxFileSize: 157286400,
            allowedFileTypes: ['application/vnd.openxmlformats-officedocument.presentationml.presentation', 'application/zip']
        }
    }
);

uppy.use(Uppy.Dashboard, {
    trigger: '.UppyModalOpenerBtn',
    inline: true,
    target: '.DashboardContainer'
});
uppy.use(Uppy.Tus10, { endpoint: '@ViewBag.APIURL' });
uppy.run();

Startup.cs 的 Configure 方法中来自 .NET Core 项目的代码片段:

app.UseAuthentication();

        app.UseTus(context => new DefaultTusConfiguration
        {
            UrlPath = "/files",
            Store = new TusDiskStore(Path.Combine(env.ContentRootPath, @"uploads\tusio")),
            OnUploadCompleteAsync = async (fileId, store, cancellationToken) =>
            {
                //var file = await (store as ITusReadableStore)
                //    .GetFileAsync(fileId, cancellationToken);
                //return fileId;
            }
        });

一切正常,但我不希望 WebAPI 保存匿名用户发送的文件。

任何解决方案或解决方法将不胜感激。谢谢。

GitHub问题: https ://github.com/tusdotnet/tusdotnet/issues/76

4

0 回答 0