Azure App Service 和 HttpContext.RequestAborted 取消令牌

3
我有一个.NET Core 3.1应用程序,其计算密集型,即对请求的响应可能会延迟几分钟。因此,我正在监视FIN或HttpContext.RequestAborted。举个例子,代码如下:
public async Task<IActionResult> Get(string request)
{
      await _process.IntensiveTaskAsync(HttpContext.RequestAborted);
      return Ok();
}

在许多环境中,包括Linux、IIS、Nginx(代理),这个方法都能很好地工作。这意味着当 CancellationToken 终止请求(即用户终止请求)时,“IntensiveTaskAsync”会被有序地终止。 然而,当代码现在从容器(Linux)托管在Azure Web App上时,它不起作用。 是否需要进行任何配置才能使其工作?请注意,当前服务托管在Dev SKU B1中。

1个回答

0

虽然这不是一个解决方案,也不是所有反向代理都被配置成这样,例如nginx转发事件..但感谢分享。 - Ibrahim Magdy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接