如何使用AJAX将数据从服务器发送到客户端?
我想查询MongoDB并检索一些文档。然后将这些文档流回到客户端,以填充如何使用AJAX将数据从服务器发送到客户端?,ajax,node.js,rest,coffeescript,Ajax,Node.js,Rest,Coffeescript,我想查询MongoDB并检索一些文档。然后将这些文档流回到客户端,以填充,而无需刷新页面。我已经知道如何使用socket.io实现这一点,但我想学习如何在没有socket的情况下传输数据。我当前获取的加载资源失败:服务器响应状态为404(未找到),因为我没有/loadRecent资源,但我不知道如何在不加载新页面的情况下执行获取。(我可能缺少一些关于REST工作原理的基本知识。)请给出建议 服务器代码: #Get recent documents app.get '/lo
,而无需刷新页面。我已经知道如何使用socket.io实现这一点,但我想学习如何在没有socket的情况下传输数据。我当前获取的加载资源失败:服务器响应状态为404(未找到)
,因为我没有/loadRecent
资源,但我不知道如何在不加载新页面的情况下执行获取
。(我可能缺少一些关于REST工作原理的基本知识。)请给出建议
服务器代码:
#Get recent documents
app.get '/loadRecent', (req, res) ->
console.log 'Documents requested...'
db.collection 'documents', (err, collection) ->
collection.find().sort(dateAdded:-1) (err, cursor) ->
if not err
res.setHeader 'content-type':'application/json'
cursor.each (err, item) ->
res.write item
else
console.log 'Error getting recent docs: ' + err
客户机代码(目前只有一个控制台.log
,但计划是在获得数据流后将数据追加到
):
尝试在中为每个游标构建JSON,而不是每次都尝试写入 构建JSON,然后在游标为NULL时使用res.send,这样您就知道它已经完成了构建
$.getJSON('/loadRecent', function(data, textStatus, jqXHR)
{
console.log('Data recieved from server: ' + data);
});