2017-05-09 10 views
0

セッションがログインしていない場合は、基本的には非常に単純なチェックを行いたいと思って、ユーザーをsignin.htmlにリダイレクトします。それは私に応じるだろうと、フロントエンドに私はセッションがある場合はページをロードし、それ以外の場合はリダイレクト

if(session){ 
    //continue 
}else{ 
    window.location.href="signup.html" 
} 

ような何かをしている私のサーバーへのAjaxリクエストはしかし、私の問題は、1秒かそこらのためにそれがサーバーを取ること、ということですあなたが同期型のAjaxリクエストをもう使用できないので、私のHTMLはバックグラウンドで読み込みを続け、ユーザーはそれを2秒間見ることができます。ログインしていないとwww.youtube.com/accountにアクセスしようとしていました。 、あなたをGoogleにリダイレクトしますaccount.htmlをロードしなくてもログインできます。また、私はノードの初心者です...だから私の質問...私はこのサーバー側を行う必要があるかもしれないと思うが、私はどのようにわからない。前もって感謝します。

+0

あなたは 'の場合(セッション)の内側にあなたのHTMLのすべてを置くことができます{ 'コードブロック。 – StephenWidom

+0

私はあなたの質問で言及したように、より正確なアプローチは実際にはあなたのサーバー側のコードがこのロジックを処理できるようにすると考えています。 –

答えて

0

あなたは急行使用している場合は、セッションがログインしているまで、クライアントへのビューを送信しないようにres.render()を使用することができます。

if(session){ 
    res.render(indexHtml); 
}else{ 
    res.render(signupHtml); 
} 
+0

[OK]を、私はこれを置くことができますか?同様に、リダイレクトがトリガーされると、何かの中に入れなければなりません。 –

+0

'app.get( '/'、sessionCallback)'のようなルートのコールバックに配置します。ブラウザがindex.htmlを呼び出すと( '/'を使用してルートが '/index.html'と同じになります)、エクスプレスサーバはセッションチェックを実行して適切なテンプレートを返します。 – amuramoto

関連する問題