私はNodeでExpressを使ってRESTfulなAPIを実装しています。基本的な認証を使用してアクセスを制御したいと考えています。Expressにホワイトリストを持つルートで基本認証/ミドルウェアを適用できますか?
私はホワイトリストのようなものを使用してそれを適用したいと思いますが、それをどうやって行うのか分かりません。
ブラックリスト第二引数と簡単ですが、私ができるだけコショウ私#VERB
呼び出し:
app.get('/', asyncAuth, requestHandler);
私はさらにとはしてすべてをブラックリストに載せることを取ることができます:
app.all('*', asyncAuth, requestHandler);
しかし、私は、適用したいですすべての単一ルートへの私のbasicAuth を除いてPOST /users
のために。それを行うためのエレガントな方法はありますか? 「ブラックリスト」アプローチを使用して、それを選択的に私が望むルートから削除することはできますか?私はどのように把握できませんでした。
興味深い質問を、私はあなたの質問はどのように」の詳細です推測します「負のルートを選択する」、つまり、いくつかのルートを除くすべてのルートを明示的に優雅にマッチさせます。あなたはregexとルートを照合し、 "/ users"を否定することができます。例えば、http://stackoverflow.com/questions/6586197/expressjs-bind-all-routes-except-2-folders? –
ありがとうございました!私はそれを言い表すのに困っていた。否定的なルートを選択することは私がしたいことです。 私は正規表現を使うと考えましたが、うまくいくでしょうが、ちょっとハックのように感じました。それはより良い方法があるべきであるように思えた。 – Terraflubb