2017-03-15 9 views
0

静的なフロントエンドアプリケーションを提供するnodejs Expressアプリがあります。私は、他のすべてのドメインからのアクセスを防止したいエンドポイントを持っています。node.jsのForbit CORSリクエスト

1つの解決策はCRSFを使用している可能性がありますが、これを避けることをお勧めします。簡単な方法はありますか?

私のアプリは非常に簡単です:

app.use(express.static(path.join(__dirname, '/dist'))); 
app.use(bodyParser.json()); 

app.post('/endpoint', (req, res) => { 
    res.send(); 
}); 
app.listen(process.env.PORT || 8080); 
+0

ブラウザは通常、 'ホストに送信するために必要とされています。リソースを要求するとき'ヘッダを。あなたは 'request'オブジェクトにそのヘッダーを取得し、探しているドメインを持っていないすべての要求をブロックすることができます。 – Lev

答えて

0

は、ドメインには、静的IPを持っていますか?あなたは、あなた自身のすべてのIPのバーからエンドポイントへのアクセスをブロックホワイトリストにあなたのドメインのIPを追加することができます。

express-ipfilter

あなたが設定することによって開始することができ要求をブロックできるように、静的IPを持っていない場合あなたのドメインにAccess-Control-Allow-Originヘッダーが設定されたCORSこれは、ブラウザからのクロスオリジンアクセスをブロックしますが、あなたが望むものに対する完全な修正ではありません。

Configuring CORS

+0

それは動的なものではありません – rocketer

+0

私は別のアイデアで私の答えを更新しました。 – jonathangoodman

関連する問題