私のセットアップは次のとおりです。は、ルータ/サブサイトなしで500エラーを投稿表明
投稿/register
には、引数を取り、パスポートとマングースを介してユーザを登録します。これがUserExistsError
を返した場合、サーバーはこの情報を(httpエラー処理を介して)クライアントに送信します。
ただし、サーバーには発生してはならない500サーバーエラーも表示されます。
これは、クライアントが/register
にルーティングすることを理解している限り、next()
です。 /register
自体はページとして存在しません(コードに記載されているポストアドレスとしてのみ)
私の質問は次のとおりです。 next()の代わりに何かを使って/register
へのリダイレクトを止めることはできますか?私はちょうどその時点でその機能から外れることを何もしないようにサーバーに欲しい。
コード:
app.post('/register', function(req, res, next) {
console.log('server registering user');
User.register(new User({username: req.body.username}), req.body.password, function(err) {
let tempstring = ""+err;
if(tempstring.indexOf("UserExistsError") !== -1){
return next(err); //get out of the function and into normal operation under '/'
}
});
});
このトピックでは、私を盗聴されており、私はちょうど些細な何かをmissunderstandかもしれません。
エラーになります合致するルートが存在しない場合は何であれば
は私はわかりません404クライアントが/ registerを見つけることができないためです。だから私は仮想リンク/サブサイトの下に投稿できないのですか?これは1ページのアプリケーションなので、余分なページを作成しないようにしたいと考えました。 – Wandang
それは、それが一致する他のルートがないので、私は起こると予想したものです。私の最初の例では、単一ページアプリケーションでかなり標準的なjsonレスポンスを送信しています。あなたがポストかゲットかのリクエストで、レスポンスが必要です。 "ページ"を作成していないのは、単にapi呼び出しであるからです。 – RedJandal
返信前にres.jsonを使用すると、エラー(私の誤り)を避けることができました。今私はjsonレスポンスをちょっと試してみる必要があります。現時点では、問題自体は修正されているようです(何も接続がなければマークします)。私はangular2のhttpモジュールを使ってpostを使い、次にmapを使って、その関連データをhandlingDataFuncに登録し、errをerrorHandlerFuncに登録しています – Wandang