php - jquery ajax 多个请求

标签 php ajax jquery long-polling

我已经使用 jQuery ajax 在函数中进行了长轮询,就像请求一样,它将一直运行。还有另一个请求将数据发送到 PHP 后端文件,第二个请求不是长轮询,它只是将数据发送到该 PHP 文件。

问题:我用 Firebug 检查发现,当长轮询请求正在运行时,只要长轮询正在运行,我就无法发送另一个请求。即使长轮询正在运行,如何发送另一个请求?

注意:我在两者中都使用了async: true

另一个问题:如何确保即使包含长轮询请求代码的函数也会被多次调用,但长轮询请求只会发出一次?

最佳答案

你的 PHP 是否使用基于 session 的身份验证?您的问题可能是 session 锁定。这种情况可能发生在 PHP 中,它在每个请求的顶部无条件地使用 session_start(),并且有时是 MVC 框架中的默认行为,即使 session 从未被修改。其他可疑用例是两个脚本是否都依赖于以管理员用户身份登录。

如果您怀疑可能是这种情况,请尝试策略性放置 session_write_close()在您不再需要修改两个脚本的 session 数据之后尽早进行。

关于php - jquery ajax 多个请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8799355/

相关文章:

javascript - 如何使用 jQuery 检测两次快速点击并更改两者的 Action

php - 在简单的 php 应用程序中访问 apache 中的 php 页面时出现 404 错误?

php - php中的PDF导出

PHP + mySQL - 精确匹配单词

jquery - 415 在 ajax 调用 Spring mvc 中发送 json 对象时不支持的媒体类型

php - jQuery dataTables 不会发送 POST 数组

ajax - 跨域ajax - 对我有用

javascript - 如何从 php 文件传递​​ jAlert 中的变量

javascript - Uncaught ReferenceError :ajax is not defined (repeated 2 times)

jquery - 插件无法处理 ajax 加载的内容