2016-10-25 2 views
0

express.nsを使ってnode.jsアプリケーションでresponse.redirectを使用していて、リダイレクトコードがJSONの302リダイレクト応答を返していますが、node.jsのreturn response.sendRedirectがJSONを返していて、ページをレンダリングしていない

は、ここに私の単純なリダイレクトコード

app.post('/signup', function (req, res) { 
    console.log("Got signup request"); 
    return res.redirect('/login'); 
}); 

私はまだだけでなく運を試してみましたres.renderんです。

面白いのは、ログインモジュールでリクエストを受け取りましたが、ページをどのようにレンダリングするのですか? 私が考えることのできる唯一の選択肢は、UIのJSONレスポンスを読み込んで、それをLoginページにリダイレクトすることです。 しかし、これはされます:

  1. は悪い考えであるリダイレクトのロジックを、公開
  2. (今それはログインですが、それは他のいくつかの主要なページであれば が想像)ターゲットページに2つの要求をヒット
  3. あなたの種類の助けがはるかにを理解されるであろう

(私はここのlocalStorageや のsessionStorageを使用しない)他に1つの のページからデータを転送することはできません事前に感謝します。

EDIT:1つの ログインルート

app.get('/login', function (req, res) { 
    console.log("Got a login request"); 
    res.sendFile(GLOBAL.basePath+'/resources/login.html'); 
}); 
+0

がどのページをレンダリングし、この問題、あなたは別のルートにリダイレクトしているに支援するため、他の多くのリンクがありますか? – adeneo

+0

@adeneo:はい、ログインページにリダイレクトしようとしています。 – Tarun

+0

奇妙に聞こえる、 'res.redirect'は何も出力すべきではありません。ただリダイレクトする必要があります。あなたはそのルートの前に出力を持っていないと確信しています – adeneo

答えて

関連する問題