当前位置: 首页 > 面试题库 >

jQuery $ .ajax请求仍待处理

邓欣可
2023-03-14
问题内容

我已经制作了一个简单的聊天应用程序,它使用jquery使用长轮询方法,

function sendchat(){ 
// this code sends the message
$.ajax({
  url: "send.php",
  async: true,
  data: { /* send inputbox1.value */ },
  success: function(data) { }
    });
}

function listen_for_message(){ 
// this code listens for message
$.ajax({
  url: "listen.php",
  async: true,
  timeout:5000,
  success: function(data) { // the message recievend so display that message and make new request for listening new messages 
            $('#display').html(data);
            listen_for_message();
             }
    });
}

这应该发生:页面加载后,发生对listen.php的无限请求,并且当用户发送消息时,代码通过send.php将消息发送到数据库。

问题是,使用萤火虫,我发现在listen.php请求之后执行的send.php请求仍然悬而未决。表示发送消息的请求仍处于待处理状态。


问题答案:

问题是由于 会话锁定 ;

send.phplisten.php文件两者都使用会话变量,因此会话被锁定在listen.php文件中,并且send.php在会话不再提供其他文件(此处listen.php)后无法再提供另一个文件(此处为file
)。



 类似资料:
  • 问题内容: 我制作的jQuery控件存在一些问题。假设您有一个下拉列表,可让您输入要查找的商品的ID,当您按ENTER键或在文本框中失去焦点时,它会通过jQuery验证您输入的ID是否正确,如果没有输入则显示警报没错 事实是,当普通用户在其中输入无效值并通过按下“提交”按钮失去焦点时,jQuery帖子将在发送表单提交后返回。 有什么方法可以检查jQuery是否处理了任何异步请求,从而不允许表单提交

  • 问题内容: 我正在制作一个Java Servlet页面,该页面检查域名列表,并通过jquery ajax请求检查每个名称。它的工作正常,除非结果被无序附加到DOM。什么是按请求的顺序处理请求的最佳方法,但是又像长时间轮询一样异步进行。我是javascript新手。 这是我用于请求的代码: 我当时正在考虑向Java Servlet发送一个序列号,该序列号将通过JSON返回,但是我想知道是否有更简单的

  • 问题内容: 我在处理ajax请求时遇到麻烦。我遇到了错误 所以我尝试的是这个jQuery ajax请求: 但是它仍然无法正常工作。我仍然遇到错误。 我该如何解决? 问题答案: 这很容易,您应该首先设置服务器http响应标头。 问题不在于您的前端javascript代码。 您需要返回此标头: 要么 在Apache配置文件中,代码如下: 在nodejs中,代码是这样的:

  • 问题内容: 注意 :我粘贴的代码不仅仅是ajax调用,以免代码是(导致)问题的一部分。但是,我认为并不是这样,因此您最好将注意力集中在和功能上。 还要注意,由于对此问题有一个评论(带有否决权),说我的代码很难解密,所以我很乐意澄清需要澄清的内容,如果这可以证明是找到问题的关键。 谢谢。 就是这个 我正在尝试抛弃jQuery,因为我唯一使用的是方法,而包括jQuery之类的整个库仅具有一项功能就令I

  • 问题内容: 我正在尝试编写一个JS代码,如果给定的数字已经存在于数据库中,它将取消“ btn_submit”按钮.onclick事件。我使用AJAX向数据库查询给定的编号,并确定是否应将数据发送到将上传问题的.php站点。为了确定这一点,我需要numOfRows变量的值,但是因为我在AJAX中将其设置为0,所以validation()函数将在我的AJAX查询完成之前完成,这将导致始终表示给定数字不

  • 问题内容: 我想知道如何以n为一组进行ajax调用。 这是我的用例: 我有一个显示使用情况数据的表。您可以钻取每一行,如果每行都有一个可以更深入钻取的公共属性,则可以选择一次钻取所有它们。对于每一行,都会进行ajax调用以获取要附加到表中的数据。 在某些情况下,最多可以同时钻取50行。可以想象,这给服务器带来了很大压力。我如何最好地以较小的批次发送这些呼叫,这些呼叫在等待这些批次之后才能启动? 我