2015-11-28 107 views
1

我学习了在Web开发中使用AJAX,并且我需要知道AJAX是否总是需要使用node.js或JQUERY?Ajax是否总是需要使用node.js?

谢谢。

+2

阿贾克斯只需要Javascript。 Node.js的是一个服务器端的技术和jQuery是一个JavaScript框架。 –

回答

1

这是一个非常广泛的问题,那么答案可能是广泛的,以及:

简短的回答:阿贾克斯不需要jQuery的,也不Node.js的

在实践中,Ajax是一种技术,用于通过使用Javascript利用异步操作从服务器发送数据并检索异步(1)。 Ajax是平原,香草的Javascript完全可用,并且它的工作原理如下(例如,从维基百科,见源):

// This is the client-side script. 
// Initialize the Http request. 
var xhr = new XMLHttpRequest(); 
xhr.open('get', 'send-ajax-data.php'); 
// Track the state changes of the request. 
xhr.onreadystatechange = function() { 
    var DONE = 4; // readyState 4 means the request is done. 
    var OK = 200; // status 200 is a successful return. 
    if (xhr.readyState === DONE) { 
     if (xhr.status === OK) { 
      alert(xhr.responseText); // 'This is the returned text.' 
     } else { 
      alert('Error: ' + xhr.status); // An error occurred during the request. 
     } 
    } 
}; 
// Send the request to send-ajax-data.php 
xhr.send(null); 

这是一个典型的例子,显示出双方如何使用Ajax与香草的Javascript,也为什么它是用其他手段如jQuery更容易,缩短了相同的片段只是:

$.ajax({ 
    url: "http://fiddle.jshell.net/favicon.png", 
}).done(function(data) { 
    // Do something with data. 
}); 

来源(包括香草阿贾克斯的例子):

0

没有,大多数浏览器供应装置进行异步JavaScript请求,但库如jQuery的部分是约平滑过度浏览器之间的差异,使得AJAX很多更便携。

现代浏览器通常没有如此大的差异,因此可移植性可能不是一个问题,但使用库已经成为常见实践。

1

有不需要使用node.js来执行Ajax请求。即使使用vanilla Javascript,您也可以发出Ajax请求。但是,jQuery使得Ajax请求非常简单,并且只需一些代码就可以与浏览器兼容。所以,我建议你坚持使用jQuery而不是使用vanilla Javascript。

你可以找到关于这里的jQuery的Ajax功能的更多信息:http://api.jquery.com/jquery.ajax/

您也可以找到有关香草的Javascript Ajax请求的功能在这里的更多信息: http://www.w3schools.com/ajax/