0

2 つの質問をしましたが、まだ問題を解決できませんでした。Node.js と Socket.io でチャット アプリケーションを作成しようとしています。問題は、私がインターネットで見たすべての例がNode.jsを使用してWebページを提供していることです。私はそれをしたくありません。PHP でページを提供し、Node.js でチャットを支援したいと考えています。なので、あまり進んでいません。

私の index.php のコードを以下に示します。

<!DOCTYPE html>
<html>
<head>
    <title>Chat app.</title>
</head>
<body>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script src="/node:1337/socket.io/socket.io.js"></script>
    <script type="text/javascript">
        $(document).ready(function(){
            var socket = io.connect('http://localhost/node:1337');
            socket.on('news', function (data) {
                console.log(data);
                socket.emit('my other event', { my: 'data' });
            });
        });
    </script>
</body>
</html>

Node.js コードを記述した app.js のコードを次に示します。

var app = require('http').createServer()
  , io = require('socket.io').listen(app);

app.listen(1337);

io.sockets.on('connection', function (socket) {
    socket.emit('news', { hello: 'world' });
    socket.on('my other event', function (data) {
        console.log(data);
    });
});

ご覧のとおり、ポート 80 は xampp によって既に使用されているため、ノードがポート 1337 を介して相互に通信するようにします。しかし、ブラウザでインデックスページにアクセスしようとすると、コンソールに「アクセスは禁止されています」と表示されます。ちなみに、必要に応じて、index.php、app.js、node_modules フォルダーはすべて htdocs/node フォルダーにあります。Windows 8 OS を使用しています。以前にこの質問をしたことがありますが、答えはあまり役に立ちませんでした。彼らはリバースプロキシについて何か言った. それが何を意味するのか、それを行う方法は言うまでもなく、私にはわかりません。

4

1 に答える 1

1

問題は、クライアントの socket.io.js のインクルージョンにあると思います。よくわかりませんが、socket.io.js を server:port/socket.io/socket.io.js として含めてみるか、このリンクを参照して、node.js で Express を使用してクライアント サーバーを実行できません

于 2013-10-05T05:28:54.263 に答える