Node.js
CORSを使用したNode.js
サーチ…
express.jsでCORSを有効にする
node.jsはAPIを構築するためによく使用されるため、異なるドメインからAPIをリクエストできるようにするには、適切なCORS設定が人生の節約になります。
例では、より広いコンフィグレーション(すべてのドメインからすべてのリクエストタイプを認可する)のために設定します。
エクスプレスを初期化した後のserver.js:
// Create express server
const app = express();
app.use((req, res, next) => {
res.header('Access-Control-Allow-Origin', '*');
// authorized headers for preflight requests
// https://developer.mozilla.org/en-US/docs/Glossary/preflight_request
res.header('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept');
next();
app.options('*', (req, res) => {
// allowed XHR methods
res.header('Access-Control-Allow-Methods', 'GET, PATCH, PUT, POST, DELETE, OPTIONS');
res.send();
});
});
通常、ノードは実動サーバー上のプロキシの背後で実行されます。したがって、逆プロキシサーバー(ApacheやNginxなど)はCORS設定を担当します。
このシナリオを便利に適応させるために、開発中のnode.js CORSのみを有効にすることができます。
これはNODE_ENV
をチェックすることで簡単に行えNODE_ENV
:
const app = express();
if (process.env.NODE_ENV === 'development') {
// CORS settings
}
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow