0

スタッカーの皆さん、こんにちは。

私が取り組んでいるウェブサイトに node.js と nowjs を実装しています。数週間前に localhost でサイトの開発を開始しましたが、すべて正常に機能していました。数日前に、OS として Ubuntu 12.04 LTS (Precise Pangolin) を使用して、rackspace がホストするクラウド サーバーにファイルを転送しました。

今、nowjs ホームページの簡単なチャットの例を動作させることができません! サーバー側スクリプトを実行しようとすると、次のエラーが発生し続けます。

[RangeError: 最大コール スタック サイズを超えました]

私のコードには再帰ループがなく、インターネット全体で問題の解決策を探してみましたが、うまくいきませんでした。

これが私の 2 つのサンプル ファイルです。公式 nowjs サイトの chat/helloworld サンプルの ac/p です。(http://nowjs.com/doc/example)

サーバー.js

var html = require('fs').readFileSync(__dirname+'/helloworld.html');
var server = require('http').createServer(function(req, res){
  res.end(html);
});
server.listen(8080);

var nowjs = require("now");
var everyone = nowjs.initialize(server);

everyone.now.distributeMessage = function(message){
  everyone.now.receiveMessage(this.now.name, message);
};

helloworld.html

<!DOCTYPE html>
<html lang="en">
<head>
<title>nowjs test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script src="/nowjs/now.js"></script>

<script>
$(document).ready(function(){

  now.receiveMessage = function(name, message){
    $("#messages").append("<br>" + name + ": " + message);
  }

  $("#send-button").click(function(){
    now.distributeMessage($("#text-input").val());
    $("#text-input").val("");
  });

  now.name = prompt("What's your name?", "");

});
</script>
</head>

<body>
  <div id="messages"></div>
  <input type="text" id="text-input">
  <input type="button" value="Send" id="send-button">
</body>
</html>

私の質問:

  1. ホストされた Web サーバーで nowjs を実行しているときに同じ問題が発生した人はいますか?
  2. ホストされた Web サーバーで nowjs を実行するときに、私が認識していない可能性のある依存関係はありますか?

ありがとうございました。

4

1 に答える 1

0

I finally resolved this. All that needed was a reinstallation of node with the most recent stable version(v0.4.12).

于 2012-06-05T20:29:28.950 に答える