jQuery:XMLHttp请求:这种同步ajax的使用不好吗?

时间:2013-01-23 22:44:00

标签: jquery ajax validation asynchronous synchronous

我知道一般来说,目标应该是避免async: false。但是,在这种情况下,我想了解是否值得将它们捆绑在一起以使其正常工作,或者是否可以:

在我网站的注册页面上,我提交了JS/jQuery验证功能。它有两个AJAX个查询,一个用于username(以确保它尚未被采用),另一个用于email(以确保它们未提交另一位用户已经声明的电子邮件)。在验证功能中,我会检查其中的每一个,以及许多其他内容(密码匹配,检查不是空白等),当其中任何一个弹出时,会显示一条警告消息。

这两个ajax查询都使用async: false,以确保表单在检查之前不会提交。

我的问题是,
这有多糟糕?如果这是坏事,那么为什么呢?我可以把工作放在一个单独的函数中,检查两个并为每个不同的选项有4个返回值,但这似乎很多......我知道这可能不是一个可靠的编码问题,但我是新编码,并希望确保我理解这里的差异意味着什么。

非常感谢。

1 个答案:

答案 0 :(得分:1)

同步HTTP请求在路由中停止后续代码的执行。虽然浏览器在此期间可能不再阻止用户界面,但我们依赖用户的可用带宽,网络可靠性以及服务器当前负载来执行我们的代码。这通常不是一种好的做法。

正如我从这个链接中找到的,这可以帮助你看看这个 https://softwareengineering.stackexchange.com/questions/112551/should-we-still-consider-a-synced-xmlhttprequest-bad-practice

您还应该接受 https://webtide.com/xmlhttprequest-bad-messaging-good/