2017-07-18 14 views
7

Asteroidをmy ddpとしてバックエンドとしてMeteorアプリケーションに接続しました。フロントエンドはhttpsを実行し、Chromeで完全に動作します。つまり、実際には独立した2つの別々のアプリケーションで構成されています。しかしSafariではうまくいかなかった。 Safariは、混在している/安全でないコンテンツがあるため、接続をブロックします。Meteor app(localhost)で安全なwebsocketを設定するには

これまでのところ、私の流星アプリにはforce-sslパッケージが追加されましたが、まだ運がありません。どのように私は私の地元の開発マシン(localhostの

答えて

1

wssプロトコルを有効にするには、あなただけのhttp://localhost:3000を使用してローカルホストに接続しようとしたことがありますか? Meteorバックエンドとフロントエンドの両方がlocalhost上で実行されている場合は、httpsまたはwss経由で接続しようとしないでください。あなたのマシンは信頼できる証明書を実行していないので、接続はできません。

また、前述の理由と同じ理由で、force-sslをローカルで使用しないでください。

上記の解決策が機能しない場合、Safariから完全なエラーを投稿してください。どこで実行されているかを明確にしてください(どちらもlocalhostか、ただ一つだけです)。

+0

はい両方ともlocalhostを実行しています。私も自己署名証明書を生成することができ、ブラウザは混在したコンテンツを受け入れることができないので、本当に安全な層が必要です – Muhaimin

+0

自己署名証明書でさえ、信頼できないのでここでは機能しません。 force-sslは必要ありません。代わりに、アプリケーションをホストしているときにsginを強制するためにnginxやapacheのようなものを使用してください。あなたのdev環境では、force-sslパッケージを削除してください。 – JoshJoe

+0

@JoshJoe私は同様の問題に直面しており、私はstackoverflow上にそれを投稿しているが、何の反応も得られていない。あなたはそれを見ていただけますか? https://stackoverflow.com/questions/47430122/uncaught-typeerror-a-qs-unescape-is-not-a-function – AnoopGoudar

関連する問題