2

ある特定のワイヤレス ネットワークで奇妙な問題が発生しました。実行すると、コレクションにアクセスできず、すべてが空になりcollection.find().fetch()ます。新しいドキュメントを minimongo に追加 (および検索) することはできますが、mongodb から読み込まれたドキュメントは表示されず、新しいドキュメントがサーバーに同期されません。これは、1 つの特定のワイヤレス ネットワークでのみ発生することに注意してください。

この動作は、自分のサーバーにデプロイした場合にのみ発生し、meteor.com にデプロイした場合には発生しません

meteor プロジェクト自体は 1 つのファイルです。

Players = new Meteor.Collection("players");

if (Meteor.isClient) {
  Meteor.subscribe("players");
}

if (Meteor.isServer) {
  Meteor.publish("players", function() {
    return Players.find();
  });
}

インストールされるパッケージは

# Meteor packages used by this project, one per line.
#
# 'meteor add' and 'meteor remove' will edit this file for you,
# but you can also edit it by hand.

preserve-inputs
standard-app-packages
insecure

バージョンは 0.6.5 です

Javascript コンソールで直接テストを行います。

Players.insert({name:'test2'})Players.find().fetch()新しいドキュメントを作成しますが、リロード後にこのドキュメントが見つかりません。meteor.com では、リロード後にドキュメントが見つかります。

meteor.com deploy のhttp://testcollections.meteor.com/ アドレス: 自分の deploy のアドレス:http://146.185.130.93/

任意のポインタは非常に高く評価されます。

4

1 に答える 1

0

接続の websocket ビットが接続されていないように思えます。meteor には 2 つの接続があります。1 つは html、画像、および js を含む静的 (動作しているように見えます) で、もう 1 つはデータとライブ更新を処理する websockets 経由です。

Chrome の JavaScript エラー コンソールで 400 websocket エラーを確認できます。この場合、長いポーリングに移行しようとしますが、これにはかなりの時間がかかります。

あなたを悩ませているのはプロキシのようなものかもしれません。HTTPプロキシなしでこれに遭遇しましたが、目に見えないソックスプロキシも(iptables経由で)実行しました。

Meteor.status()上記の場合、「待機中」を示すものを確認することで、すばやく確認することもできます。

于 2013-08-20T20:51:29.487 に答える