Javascript AJAX调用和在节点中获取返回数据

Javascript AJAX调用和在节点中获取返回数据,javascript,jquery,ajax,node.js,Javascript,Jquery,Ajax,Node.js,我想从客户端到后端进行一个ajax调用。我从success函数获得了一个成功的调用,但是,我无法理解如何从服务器获取数据以从客户端返回 当前,尝试使用res.send时出现的错误是: Error: Can't set headers after they are sent. AJAX JS后端 exports.home=函数(请求、恢复){ 函数passList(profArray,回调){ setTimeout(函数(){ 回调(profArray); }, 1000); } 函数getPr

我想从客户端到后端进行一个ajax调用。我从success函数获得了一个成功的调用,但是,我无法理解如何从服务器获取数据以从客户端返回

当前,尝试使用res.send时出现的错误是:

Error: Can't set headers after they are sent.
AJAX JS后端
exports.home=函数(请求、恢复){
函数passList(profArray,回调){
setTimeout(函数(){
回调(profArray);
}, 1000);
}
函数getProfs(教师名称,successCallback){
google.resultsPerPage=10
var nextCounter=0
谷歌(教师姓名、功能(err、res){
如果(错误)控制台。错误(错误)
var teacher_results=[];//保留从函数返回的所有教师
对于(变量i=0;i
在后端,您应该有一些AJAX调用到达的路径。在那里,您可以在响应时调用
send

在node.js/express中,这类似于

app.get('/ajaxURL', function (req, res) {
  res.send('I want this string to return to the client');
});
要从前端访问数据,请在AJAX回调中访问它:

$.ajax({url: '/ajaxURL'}).done(function (data) {
    console.log(data);
});

我没有正确地理解上下文,但是您可以通过这个例子来理解

从服务器发送数据
response.send(“您的数据”)
使用AJAX的成功方法在客户端访问此数据:

success:function(data){console.log(data)}

返回到哪里?需要了解更多关于服务器代码上下文的信息,比如我在服务器端调用一个方法。我希望从服务器返回数据,比如一个数据字符串或JSON obj,返回到客户端,以便我可以将其添加到我的模板中。您需要包含更多的JS后端代码。@JAM更新了原始错误,因为您在res.send之后调用res.render。如何在客户端的ajax函数中访问res.send中的数据?您已成功回调,并且它具有参数数据,所以你可以通过读取这个参数来访问我创建了一个新的路由,它正在处理返回的数据,这就是我想要的。我仍然存在的问题是,当我执行res.send(req.body)时,返回数据为空。这有什么原因吗?它不应该打印我从最初的AJAX调用传入的数据吗?您可能需要先解析请求体,然后才能访问它(例如,Express有一个称为bodyparser的中间件),或者您可能无法将对象发送回服务器(尝试res.send(JSON.stringify(req.body)),看看这是否是罪魁祸首)。如果这没有帮助,请问另一个问题。
app.get('/ajaxURL', function (req, res) {
  res.send('I want this string to return to the client');
});
$.ajax({url: '/ajaxURL'}).done(function (data) {
    console.log(data);
});