0

私は文字通り、今日 Node.js について知ったばかりで、読みすぎて頭が痛くなりました。ノードサーバーを稼働させています。ノード サーバーには、テキスト ファイルに書き込む .JS ファイルもあります。ログ ファイルが更新されるように、Javascript アプリケーションから Node.js を実行しているサーバーに変数 (名前) が 1 つだけ渡されることを確認したいと思います。私が読んだことから、これを行うには AJAX が最善の方法です。これを行う方法に関する小さなコード例で、誰かが正しい方向に進むことができますか?

ノードを実行しているサーバー上の File.js のコード

var fs = require('fs'), str = 'some text';
fs.open('H://log.txt', 'a', 666, function( e, id ) 
{
  fs.write( id, str + ',', null, 'utf8', function(){
  fs.close(id, function(){
  console.log('file is updated');
});

}); });

4

1 に答える 1

3

これは私があなたが言及したことを行う方法です:

簡単な http サーバーを作成し、任意の接続の要求変数を見て、渡されたパラメーターを取得し、それをファイルに書き込みます。

var http = require('http');
http.createServer(function (req, res) {
    var inputText = req.url.substring(1);
    processInput ( inputText );
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Completed.');
}).listen(1337, '127.0.0.1');

ここで編集してください:もちろん、何が何でprocessInputあるかを定義する必要があります。

function processInput ( text )
{
    // What you had before
    var fs = require('fs');
    fs.open ('H://log.txt', 'a', 666, function (e, id )
    {
        fs.write ( id, text + ',', null, 'utf8', function() {
            fs.close(id, function() {
               console.log('file is updated');
            }
        }
    });
}

このように、リクエストを送信すると

127.0.0.1:1337/書き込み

「書き込み」という単語をファイルに書き込みます(processInputが入力を書き込む場合)。

処理する別の方法は、URI のパラメーターを使用することです。これを行う方法の詳細については、まさにここ nodejs api にあります。

幸運を!

于 2012-04-26T22:37:21.990 に答える