【问题标题】:why ajax sending request one after another为什么ajax一个接一个地发送请求
【发布时间】:2018-07-12 16:23:00
【问题描述】:

我今天想知道。

在我的项目中,ajax 没有进行异步调用。请求一个接一个地发送。

在处理一个请求时,其余的所有请求都处于待处理状态。

您可以在下图中看到

这是昨晚发生的。

【问题讨论】:

  • 能否提供发送 ajax 请求的代码?
  • 希望链接stackoverflow.com/questions/6685249/…能帮到你
  • function DelVideos(VideoID) { var param = { "VideoID": VideoID };参数 = JSON.stringify(param); $.ajax({ type: "Post", url: "/KnowledgeAreas/DelVideos", contentType: "application/json; charset=utf-8", data: param, success: function (data) { $('#DelVideoModal ').find('button.close').click(); GetVideos(); },错误:函数(响应){警报(响应);}}); };
  • 这是正常的 ajax 调用,只是它一直工作到昨晚。我不知道我的项目发生了什么。
  • 请求一个接一个地发送

标签: javascript jquery .net angularjs asp.net-mvc


【解决方案1】:

如何应用 Ajax 调用无关紧要。它与 ASP.NET 最相关的是管理会话。这里是官方documentation

并发请求和会话状态

访问 ASP.NET 会话状态 每个会话都是独占的,这意味着如果两个不同的用户 并发请求,授予对每个单独会话的访问权限 同时。但是,如果对 相同的会话(通过使用相同的 SessionID 值),第一个请求 获得对会话信息的独占访问权。第二个请求 仅在第一个请求完成后执行。

如您所见,如果对同一会话发出两个并发请求(在您的情况下是这样),则在第一个请求得到响应后应用第二个请求。

编辑

如果您不希望这种行为,您可以使用SessionStateAttribute 装饰您的控制器并禁用访问会话。

[SessionState(SessionStateBehavior.Disabled)]

如果你只想读取会话的权限,你可以像这样添加属性。

[SessionState(SessionStateBehavior.ReadOnly)]

【讨论】:

  • 谢谢。您的回答与我当前的问题有关。
  • 我在我的 web.config 文件中使用 这个
  • 你能详细解释一下吗
  • 这是我的另一个问题
猜你喜欢
  • 2022-11-02
  • 2015-06-05
  • 1970-01-01
  • 2022-10-16
  • 1970-01-01
  • 2012-08-29
  • 1970-01-01
  • 2011-07-01
  • 1970-01-01
相关资源
最近更新 更多