4

私は自分の socket.io サーバーに接続する socket.io クライアント アプリを作成し、必要なものは何でも通信します。

1 台のマシンまたは 2 台の異なるローカル マシンでローカルに実行すると、すべて正常に動作します。そのため、クライアントをcloud9にデプロイしようとしましたが、このエラーがスローされ続けます。

net.js:540
    connectReq = self._handle.connect(address, port);
Error: No local connects allowed for security purposes
    at connect (net.js:540:31)
    at net.js:607:9
    at Array.0 (dns.js:88:18)
    at EventEmitter._tickCallback (node.js:190:38)

クライアント コードは次のとおりです。[ip-address] はサーバーの IP アドレスです。

var io = require('socket.io-client'),
socket = io.connect('[ip-address]', {
    port: 1337
});

そのような socket.io クライアントを c9.io で実行する方法はありますか?

彼らはこの記事のためにそれをブロックしましたか?

上記のような socket.io クライアント アプリケーションを実行できる無料の node.js ホスティング ソリューションはありますか?

ありがとう。

4

3 に答える 3

3

必要に応じて、無料の Heroku アカウントを作成できます。データベースにアクセスすることはできず、リソースも限られていますが、アプリが十分に小さく効率的であれば、それで十分です。

于 2012-06-19T22:43:28.757 に答える
3

Nodejitsuは現在、すべてが機能する無料の node.js ホスティング ソリューションです ( socket.ioを含む)

于 2012-06-19T15:25:38.570 に答える
1

OpenShift はポート 8080 と Heroku 3000 を使用します。

クライアントコードは次のようにする必要があります。

// Wrong!:
// mySocket = io.connect(host, port);

// Right:
mySocket = io();
mySocket.on(....);

サーバーコードは次のようになります。

var express = require('express'),
    app = express(),
    server = require('http').Server(app),
    io = require('socket.io')(server);

app.use(express.static('path/to/public/html'));
server.listen(8080); // OpenShift 8080, Heroku 3000

io.on(...);

https://devcenter.heroku.com/articles/node-websockets#create-a-socket-io-client

于 2016-12-15T14:42:29.503 に答える