在没有JQuery的NodeJS中检测AJAX请求

Detecting AJAX requests in vanilla NodeJS without JQuery

本文关键字:检测 AJAX 请求 NodeJS JQuery      更新时间:2023-09-26

区分AJAX请求和其他浏览器HTTP请求的最佳方法是什么?我使用香草NodeJS与AtomicJS作为AJAX库。它似乎没有设置"X-Requested-With"标头,我读到这是JQuery用来指示AJAX请求的。我应该切换到有这个功能的库吗?是否有其他方法检测AJAX请求?我应该尝试手动设置标题,这样做是否有任何潜在的问题?

没有可靠的方法来区分(除非您显式地为所有自己的请求设置标题或其他指示符)。更重要的是,如何发送请求并不重要。

您可以在请求的头部或正文中显式声明请求来自Ajax请求,但更好的方法可能是在服务器上为Ajax请求提供单独的端点。

例如,非ajax请求的uri可能是

http://myserver.com/non-ajax-uri

然后你可以在

有另一个端点
http://myserver.com/ajax-uri

如果大多数行为在两个端点之间共享,则只需将其封装在两个端点共享的另一个函数中