2016-03-19 6 views
0

私は解決できない課題があります。私はnode.jsでウェブサイトを作って、サブドメインのルーティングを含むルーティングのために書かれたコードをすべて持っています。一部のユーザーのみがアクセスできる場所、ログインしたユーザーのみがアクセスできる場所があります。ユーザーのためにチャットを追加したいので、socket.ioとクライアント側のjsを使って作成しました。クライアントサイドのURL処理を行わない動的Webサイト

ここでは、クライアントがウェブサイトの別の部分に行くときに画面上のバーにチャット要素を開いたままにするサイトが必要です。私は多くのソリューションを検討してきましたが、ほとんどすべてにng-modelやUIテクニックでangular.jsのようないくつかのjsライブラリが含まれていますが、URLを処理するクライアント側のコードとロードするものが含まれています。

ので、私は本当にこの方法を行うにはしたくない:私は再書き込みすべての私のルートにしたくないと私は、ユーザーの認証を処理する方法にもわからない

  1. クライアントの方法がセキュリティ上の問題であることが判明しました
  2. 私のウェブサイトは1ページのアプリケーションではありません。

    状態1: State1

    状態2:チャット滞在が、他のコンテンツがロードされたことを State2

    お知らせここ

は私が望んでいます何のイメージです。また、別のサブドメインとログインしているユーザーだけがアクセスできる場所に移動しました。

ありがとうございます!

+1

しかし、HTTP経由で別のURLに移動すると、技術的にHTML全体がリロードされていることがわかりますか?ポップアップウィンドウや(推奨されない)フレームセット、または1ページのアプリケーションとXHRを使用する現代的なアプローチで処理することができます。これは最高ですが、あなたが望むものではありません。 – migg

+0

はい、解決策が見つからない場合は、ポップアップを表示します。あるいは私のユーザーの何人かが私がちょうど小さい何かのための多くの仕事のように見える角度の付いたシングルページのアプリデザインを組み込むためにウェブサイトをコード化するだろうと不平を言うならば。 –

答えて

2

あなたはページリフレッシュの状態を維持したいと思います。 Facebookはそうです。これを行う真実で信頼できる方法は、チャットの状態を保存するクッキーを設定することです:オープン/クローズ、またはサーバーに状態を格納します。次に、ページの読み込み時に、このデータに基づいてチャットを初期化します。

関連する問題