Javascript 我应该等待ajax完成重定向页面吗?

Javascript 我应该等待ajax完成重定向页面吗?,javascript,ajax,page-lifecycle,Javascript,Ajax,Page Lifecycle,我知道如何等待ajax完成,但是如果我要在一些ajax调用被触发后重定向页面,我应该在重定向之前等待它们完成吗?这有关系吗?如果您确信ajax调用会成功,那么一旦ajax调用发生,重定向就不会影响服务器。但是别忘了,客户端可能会失去连接,或者可能会发生一些错误,因此您可能应该等待以确保呼叫成功。另一个要考虑的是,你的Ajax调用是否会影响你要重定向的页面。在这种情况下,在重定向之前一定要等待。您不希望您的用户被重定向到断开的页面,因为他们的连接很慢或您的服务器出现故障。我建议等待并处理可能发生的

我知道如何等待ajax完成,但是如果我要在一些ajax调用被触发后重定向页面,我应该在重定向之前等待它们完成吗?这有关系吗?

如果您确信ajax调用会成功,那么一旦ajax调用发生,重定向就不会影响服务器。但是别忘了,客户端可能会失去连接,或者可能会发生一些错误,因此您可能应该等待以确保呼叫成功。另一个要考虑的是,你的Ajax调用是否会影响你要重定向的页面。在这种情况下,在重定向之前一定要等待。您不希望您的用户被重定向到断开的页面,因为他们的连接很慢或您的服务器出现故障。

我建议等待并处理可能发生的错误

通过同步完成整个过程,最终实现重定向,您可以获得安全连接、错误检测和更好的软件


您可能会多花费0.1秒的执行时间,但谁在乎呢?

我认为Ajax在重定向之后不是一个好的Ajax用例。 相反,我建议您执行常规服务器请求,然后在重定向到最终目的地之前处理服务器上的所有操作

这将使模式更加简单,网络流量也大大减少。
我建议在希望避免重新加载页面的情况下使用Ajax。然而,在您的场景中,您计划在操作完成后立即离开页面,所以为什么不避免Ajax将给您带来的来回操作呢

我想这取决于您是否需要对ajax调用返回的状态代码进行错误处理。如果你在它完成之前重定向,你怎么知道它正确通过了呢。例如,一个计算页面浏览量的ajax调用可能会被遗忘。ajax是计算页面浏览量的好方法吗?不会统计关闭JS的用户。只有大约2%的用户禁用了javascript:。所以这真的取决于你想要多准确。。。我通常只会忽略这些人。这不是真的,我想从ajax做的过程是20秒的事情。我已经有一段时间没有发表这个评论了。我应该清楚的是,我的意思基本上与公认的答案是一样的,如果你能绝对保证执行会成功,那么当然,你可以重定向,但有可能只是失去连接,或者出现你想要处理的异常。