0

MongoDB にクエリを実行して、いくつかのドキュメントを取得したいと考えています。次に、これらのドキュメントをクライアントにストリーミングして<table>、ページを更新せずに入力します。socket.io を使用してこれを行う方法は既に知っていますが、ソケットを使用せずにデータを転送する方法を学びたいと考えています。Failed to load resource: the server responded with a status of 404 (Not Found)リソースがないため、現在 を取得していますが、新しいページをロードせず/loadRecentに を実行する方法がわかりません。GET(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

クライアント コード (現在は しかありませんが、データが流れたら にconsole.logデータを追加する予定です。):<table>

$.getJSON('/loadRecent', function(data, textStatus, jqXHR)
            {
                console.log('Data recieved from server: ' + data);
            });
4

1 に答える 1

1

毎回書き込むのではなく、for each カーソルで JSON を構築してみてください。

JSON を作成し、カーソルが NULL のときに res.send を使用して、作成が完了したことを確認します。

于 2013-01-01T04:18:09.973 に答える