ASP.NET Core Kestrel RequestSizeLimit对于不同的用户有什么不同?

问题描述 投票:0回答:1

在我们的ASP.NET Core 2.0应用程序中,我们希望为大多数用户提供一个X的RequestSizeLimit,但对于一些特殊用户,我们希望将其提升到更高的值Y> X.

即我们今天有这个:

[HttpPost("files")]
[RequestSizeLimit(100_000_000)]
public async Task<ActionResult> Upload(string uploadId, IFormCollection formData)
{
    /* Action body */
}

但我们希望为某些特定用户应用更高的大小限制。

如何才能做到这一点?

该应用程序在IIS中以反向代理设置方式托管。

c# asp.net-core httprequest size kestrel-http-server
1个回答
1
投票

你应该编写自己的属性和过滤器。尝试检入它,哪个用户被授权,然后检查请求大小(您可以通过检查HttpContext来实现)。你可以通过实现自己的IAsyncActionFilter来实现它。

© www.soinside.com 2019 - 2024. All rights reserved.