VBScript(经典ASP)和多个ajax调用并排



我有一次ajax调用,它连接到数据库,在数据库中设置一个标志,并等待一个文件由其他进程创建,查找标志。

在服务器上创建文件之前,ajax一直等待。文件创建后,ajax读取文件并显示内容。

现在的问题是,有时创建文件的后端进程陷入套接字问题,并且从未创建文件,但ajax在这种情况下一直等待,只有当超时发生时才会超时,

我想展示一个停止请求按钮,它可以停止当前的ajax请求,因为超时时间很长,用户可以在超时之前停止它。

这是我所尝试的,我修改了代码,它一直在寻找文件的存在,并添加了一个会话变量检查,如如果session ("AbortCheck") = true,然后退出脚本。

并放置另一个ajax调用来更新sessin变量,以便当脚本在循环中发现session = true时,它将立即停止请求。

在调试时,我发现只有在第一个ajax完成时才执行更新会话变量的新ajax请求。因此,它永远不会在用户请求时停止请求。

谁能让我知道如何停止运行ajax(这是需要时间)对用户输入?

谢谢

也许您可以在AJAX脚本中实现一些错误管理,而不是让用户管理。

            'Try to open the socket here
            on error resume next
            if err<>0 then
               Response.Write("1")
            else
               Response.Write(fileContent)
            end if      

如果ajax脚本返回1,则调用者脚本将错误通知用户。

我通过从服务器端删除循环来固定服务器端执行,该循环不断检查文件,并在js文件中放置循环以重新检查相同,并且对于握手,如果在服务器上没有找到文件,我将消息传递给等待ajax和另一个标志从jquery进行中止检查,这解决了问题。

相关内容

  • 没有找到相关文章

最新更新