ホームページ >ウェブフロントエンド >jsチュートリアル >別のポートと通信する Node.js Express サーバーに対して CORS を有効にする方法
バックグラウンド
クロスオリジン リソース共有 (CORS) Web アプリケーションが他の Web サイト上のリソースに安全にリクエストを送信できるようになります。 Node.js Express サーバーを使用して、別のポートで実行されている別の API と通信する場合、クロスオリジン エラーを避けるために CORS を有効にする必要があります。
Express で CORS を有効にする
Express で CORS を有効にするには、cors パッケージをインストールします。
npm install cors --save
cors をインポートしますパッケージと Express モジュール:
const cors = require('cors'); const express = require('express');
Express アプリを初期化します:
const app = express();
cors ミドルウェアを使用して、すべてのリクエストに対して CORS を有効にします:
app.use(cors());
特定のルートの CORS を構成します
必要に応じて特定のルートに対してのみ CORS を有効にするには、次の構文を使用します。
app.get('/products/:id', cors(), (req, res, next) => { res.json({ msg: 'This is CORS-enabled for a Single Route' }); });
例
この例では、ポート 8080 で CORS を有効にします。 dcm4chee が実行されます。これを行うには、Node.js アプリに次のコードがあると仮定します。
const express = require('express'); const app = express(); app.get('/request-from-browser', (req, res, next) => { // Your code to handle the request }); app.listen(3000, () => { console.log('Node.js app listening on port 3000'); });
ポート 8080 で /request-from-browser ルートの CORS を有効にするには、ルート コードの前に次のミドルウェアを追加します。 :
app.use('/request-from-browser', cors());
これにより、ポート上の /request-from-browser に対して行われたリクエストに対して CORS が有効になります。 8080.
以上が別のポートと通信する Node.js Express サーバーに対して CORS を有効にする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。