2017-12-16 16 views
-1

私の質問は簡単です。どうすれば私のsocket.io nodejsアプリケーションとlaravelセッション情報を安全に共有できますか?私は多くの異なる方法を試しましたが、どれも効果がありませんでしたので、専門家が引き抜くことを望んでいます。私はすでにJWTトークンを使いたくないことを知っています。だから私はセッションのクッキーデータ自体を残すと思います。私はsocket.ioをクッキーと認証する方法を理解できないので、助けが必要です。私はredisを使用してセッションを保存しており、laravelでデフォルトの認証システムを使用しています。Laravel共有セッションSocket.io Nodejs

セッションの解析に最適なこのライブラリを使用しようとしました。しかし、私のsocket.ioサーバでは認証されません。 https://www.npmjs.com/package/node-laravel-session

誰かがこの問題を解決する方法を知っていれば、私はいくつかの助けに感謝します。

答えて

0

私はsocket.ioの認証に問題があると思いますが、セッションをアプリケーションからアプリケーションに簡単に共有できないのはなぜですか?

  1. すると、ユーザーが認証:このデータは、クライアントのブラウザ(クッキー)とサーバ(セッション)の間に処理されるので、あなたがLaravelとSocket.ioを接続したい場合は、まず次のような流れのいくつかの種類を確認する必要がありますsocket.ioのクッキーを として設定します(ホストが異なる場合)。
  2. バックグラウンドでは、セッションデータトラフデータベース(memcached、redisなど)とCookieを共有する必要があります。ご存じのように、laravelセッションparamをデータベースで動作させるように設定した場合、laravelは自動的にセッションデータをDBに保存し始めるので、データベースからセッションパラメータを読みやすくなります。

私はあなたが他のサーバー上のNode.jsアプリケーションを持っていて、getSessionFromFileを使用している場合、それは動作しません、私は意味、あなたは間違ったことでノードlaravelセッションを使用していると思います。正しく使用していることを確認してください。そんなことをするのはプロセス自体が簡単ですが、プロジェクト間のセッションがある場合にはほとんど問題はセキュリティです。

関連する問題