gpt4 book ai didi

.net - jQuery Ajax - 针对 ASP.NET MVC 运行多个请求

转载 作者:行者123 更新时间:2023-12-01 03:26:15 24 4
gpt4 key购买 nike

我有一个“选项卡式”样式的网页,页面加载后,每个选项卡都会对其内容触发 Ajax 请求(使用 jQuery)。后端是在 Visual Studio 中运行的 ASP.NET MVC,因此只需使用普通的“ASP.NET 开发服务器”来处理请求。我遇到以下问题:

1) 网络服务器一次处理一个请求。在第一个请求完成之前,不会处理第二个请求。这是在某种单线程模式下运行的“ASP.NET 开发服务器”吗?我可以让它成为多线程吗(我应该让它成为多线程还是这会打开一个痛苦的世界?)

2) 长时间运行的请求会杀死后续请求。即使我一次发出所有 ajax 请求,但每次都会为这些请求提供服务,为什么某些请求会这样做甚至无法到达网络服务器?一旦长请求得到服务,就会发生这种情况。例如:

  • 第一个请求(小请求)-回复好
  • 第二个请求(大请求) - 响应需要一分钟或所以但确实得到了服务。
  • 第三个请求(小请求)- 永不请求到达服务器并且 jQuery 完成不报告错误。

我尝试增加ajax超时但没有成功。

<小时/>

更新:我在我的代码中发现了一个错误,它弄乱了最终请求的 URL,因此看起来这与请求长度和 ajax 超时无关(脸红!)。一路上,我发现了有用的 ajaxManager 插件,如果您需要的话,它非常适合排队请求(http://www.protofunc.com/scripts/jquery/ajaxManager/)。另外,感谢您提供有关使用 ASP.NET Dev Server 进行测试的有效观点。它确实与IIS有很大不同。

最佳答案

关于第 1 点,请记住,如果您使用 session 状态,则请求将不会同时执行 - ASP.NET 将锁定 session 状态,并且每次只处理使用它的每个请求。 (有关详细信息,请参阅 http://msdn.microsoft.com/en-us/library/ms178581 中的“并发请求和 session 状态”部分)尝试禁用 session 状态(当然,如果您没有使用它!)并查看是否有帮助。

关于.net - jQuery Ajax - 针对 ASP.NET MVC 运行多个请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4863510/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com