C#   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c# – 有没有办法在不使用Thread.Sleep的情况下延迟ASP.NET MVC 4中的HTTP响应?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想延迟我的网站身份验证请求的响应,以便服务器在收到请求时的特定秒数偏移处开始响应.

例如,如果用户在04:00:00进行身份验证,我希望响应在04:00:05回来,而不是迟早.如果代码无法满足截止日期,我希望它导致@L_618_2@.

这必须在服务器端完成,我想避免使用Thread.Sleep.然,我认为可能有一种方法可以使用异步控制器并在请求的部分继续使用Thread.Sleep

这里有没有人面临类似的挑战,你的解决方案是什么?

你们中的任何人都可以想到一种方法来避免Thread.Sleep并保持响应能力吗?

解决方法

您可以使用自定义ActionFilters.

>记录请求到达OnActionExecuTing方法的时间.
>然后在OnResultExecuted方法上检查结果.如果它是一个有效的响应让它通过,如果它是一个未授权的响应延迟它使用Thread.Sleep与所需的延迟基于记录的开始时间.

如果您使用的是全局过滤器而非属性,请确保您的过滤器在授权过滤器([授权]?)之前运行或在其之前注册.

这样延迟对授权用户没有影响,我认为这是你不想使用Thread.Sleep的原因.请注意,认情况下Thread.Sleep不是很准确(大约20ms),但客户端的网络延迟应该模糊不清.

大佬总结

以上是大佬教程为你收集整理的c# – 有没有办法在不使用Thread.Sleep的情况下延迟ASP.NET MVC 4中的HTTP响应?全部内容,希望文章能够帮你解决c# – 有没有办法在不使用Thread.Sleep的情况下延迟ASP.NET MVC 4中的HTTP响应?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。