gpt4 book ai didi

jquery - Node.js 从 Node 检索数据到 jquery ajax 回调

转载 作者:搜寻专家 更新时间:2023-10-31 23:49:41 24 4
gpt4 key购买 nike

我有一个 jquery ajax 调用,它向运行良好的 node.js 应用程序发送请求,问题是我无法通过 jquery 回调检索任何响应。

Jquery

$(document).ready(function(){
var listing = $('#listing');

$.ajax
({
url: "http://my.ip.is.here:3000/",
cache: false,
//timeout: 5000,
success: function(data)
{
listing.append(data);
}
});

})

Node :

var s = http.createServer(function (req, res) {
req.on('data', function(sock) {

// SEND DATA BACK TO AJAX HERE

});

});

s.listen(3000, 'my.ip.is.here');

console.log('Server running at http://my.ip.is.here:3000/');

我应该如何将 node.js 应用程序中的数据检索到我的 jquery 回调中? (并希望在保持连接的同时)

最佳答案

如果你想在服务器上触发数据事件,你必须向服务器发送数据,可能使用 Jquery 的 post 方法,如下所示:

var postSomething = function(){

$.post
(
"http://127.0.0.1:3000/",
{wooo:'wooo'},
function(data)
{
console.log(data);
}
);
}

另外,当服务器触发 'data' 事件时,你应该在响应对象中写入一些数据:

req.on('data', function(sock) {
res.writeHead(200, {"Content-Type": "text/plain"});
res.end("Hello!!");
});

但是,如果您只想从服务器检索数据,我认为您不需要服务器上的数据事件,并且可以像这样处理请求:

var s = http.createServer(function (req, res) {
res.writeHead(200, {"Content-Type": "text/plain"});
res.end("Hello!!");
});

如果你使用'end'你将结束请求,如果你想保持它活跃,你可以只使用'write'。这样,连接仍然处于事件状态,每次将数据写入响应对象时,您都会将数据流式传输到客户端。

希望这对您有所帮助!

关于jquery - Node.js 从 Node 检索数据到 jquery ajax 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9760064/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com